diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 714f75ee7..19f733d7c 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -32,3 +32,7 @@ jobs:
repository: ${{ env.GITHUB_REPOSITORY }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ release-to-pypi:
+ uses: deepmodeling/workflows/.github/workflows/release-to-pypi.yml@main
+ secrets:
+ PYPI_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
diff --git a/README.md b/README.md
index 52d608313..c9bc9494b 100644
--- a/README.md
+++ b/README.md
@@ -22,6 +22,7 @@
[![GitHub release](https://img.shields.io/github/release/deepmodeling/dpgen.svg?maxAge=86400)](https://github.com/deepmodeling/dpgen/releases/)
[![doi:10.1016/j.cpc.2020.107206](https://img.shields.io/badge/DOI-10.1016%2Fj.cpc.2020.107206-blue)](https://doi.org/10.1016/j.cpc.2020.107206)
+![Citations](https://citations.njzjz.win/10.1016/j.cpc.2020.107206)
[![conda install](https://img.shields.io/conda/dn/conda-forge/dpgen?label=conda%20install)](https://anaconda.org/conda-forge/dpgen)
[![pip install](https://img.shields.io/pypi/dm/dpgen?label=pip%20install)](https://pypi.org/project/dpgen)
@@ -188,6 +189,10 @@ If you want to specify a structure as starting point for `init_bulk`, you may se
"from_poscar": true,
"from_poscar_path": "....../C_mp-47_conventional.POSCAR",
```
+`init_bulk` support both VASP and ABACUS for first-principle calculation. You can choose the software by specifying the key `init_fp_style`. If `init_fp_style` is not specified, the default software will be VASP.
+
+When using ABACUS for `init_fp_style`, the keys of the paths of `INPUT` files for relaxation and MD simulations are the same as `INCAR` for VASP, which are `relax_incar` and `md_incar` respectively. You have to additionally specify `relax_kspacing` and `md_kspacing` for k points spacing, and dpgen will automatically generate `KPT` files according to them. You may also use `relax_kpt` and `md_kpt` instead of them for the relative path for `KPT` files of relaxation and MD simulations. However, either `relax_kspacing` and `md_kspacing`, or `relax_kpt` and `md_kpt` is needed. If `from_poscar` is set to `false`, you have to specify `atom_masses` in the same order as `elements`.
+
The following table gives explicit descriptions on keys in `PARAM`.
The bold notation of key (such as **Elements**) means that it's a necessary key.
@@ -199,9 +204,9 @@ The bold notation of key (such as **Elements**) means that it's a necessary key.
| cell_type | String | "hcp" | Specifying which typical structure to be generated. **Options** include fcc, hcp, bcc, sc, diamond.
| latt | Float | 4.479 | Lattice constant for single cell.
| from_poscar | Boolean | True | Deciding whether to use a given poscar as the beginning of relaxation. If it's true, keys (`cell_type`, `latt`) will be aborted. Otherwise, these two keys are **necessary**.
-| from_poscar_path | String | "....../C_mp-47_conventional.POSCAR" | Path of POSCAR. **Necessary** if `from_poscar` is true.
-| relax_incar | String | "....../INCAR" | Path of INCAR for relaxation in VASP. **Necessary** if `stages` include 1.
-| md_incar | String | "....../INCAR" | Path of INCAR for MD in VASP. **Necessary** if `stages` include 3.|
+| from_poscar_path | String | "....../C_mp-47_conventional.POSCAR" | Path of POSCAR for VASP or STRU for ABACUS. **Necessary** if `from_poscar` is true.
+| relax_incar | String | "....../INCAR" | Path of INCAR for VASP or INPUT for ABACUS for relaxation in VASP. **Necessary** if `stages` include 1.
+| md_incar | String | "....../INCAR" | Path of INCAR for VASP or INPUT for ABACUS for MD in VASP. **Necessary** if `stages` include 3.|
| **scale** | List of float | [0.980, 1.000, 1.020] | Scales for transforming cells.
| **skip_relax** | Boolean | False | If it's true, you may directly run stage 2 (pertub and scale) using an unrelaxed POSCAR.
| **pert_numb** | Integer | 30 | Number of pertubations for each POSCAR.
@@ -210,6 +215,12 @@ The bold notation of key (such as **Elements**) means that it's a necessary key.
| **md_nstep** | Integer | 10 | Steps of AIMD in stage 3. If it's not equal to settings via `NSW` in `md_incar`, DP-GEN will follow `NSW`.
| **coll_ndata** | Integer | 5000 | Maximal number of collected data.
| type_map | List | [ "Mg", "Al"] | The indices of elements in deepmd formats will be set in this order.
+| init_fp_style | String | "ABACUS" or "VASP" | First-principle software. If this key is abscent, the default value will be "VASP".
+| relax_kpt | String | "....../KPT" | Path of `KPT` file for relaxation in stage 1. Only useful if `init_fp_style` is "ABACUS".
+| relax_kspacing | Integer or List of 3 integers | 10 | kspacing parameter for relaxation in stage 1. Only useful if `init_fp_style` is "ABACUS".
+| md_kpt | String | "....../KPT" | Path of `KPT` file for MD simulations in stage 3. Only useful if `init_fp_style` is "ABACUS".
+| md_kspacing | Integer or List of 3 integers | 10 | kspacing parameter for MD simulations in stage 3. Only useful if `init_fp_style` is "ABACUS".
+| atom_masses | List of float | [24] | List of atomic masses of elements. The order should be the same as `Elements`. Only useful if `init_fp_style` is "ABACUS".
### Init_surf
@@ -544,20 +555,21 @@ The bold notation of key (such aas **type_map**) means that it's a necessary key
| training_iter0_model_path | list of string | ["/path/to/model0_ckpt/", ...] | The model used to init the first iter training. Number of element should be equal to `numb_models` |
| training_init_model | bool | False | Iteration > 0, the model parameters will be initilized from the model trained at the previous iteration. Iteration == 0, the model parameters will be initialized from `training_iter0_model_path`. |
| **default_training_param** | Dict | | Training parameters for `deepmd-kit` in `00.train`.
You can find instructions from here: (https://github.com/deepmodeling/deepmd-kit)..
|
+| dp_compress | bool | false | Use `dp compress` to compress the model. Default is false. |
| *#Exploration*
| **model_devi_dt** | Float | 0.002 (recommend) | Timestep for MD |
| **model_devi_skip** | Integer | 0 | Number of structures skipped for fp in each MD
-| **model_devi_f_trust_lo** | Float | 0.05 | Lower bound of forces for the selection.
- | **model_devi_f_trust_hi** | Float | 0.15 | Upper bound of forces for the selection
-| **model_devi_v_trust_lo** | Float | 1e10 | Lower bound of virial for the selection. Should be used with DeePMD-kit v2.x |
-| **model_devi_v_trust_hi** | Float | 1e10 | Upper bound of virial for the selection. Should be used with DeePMD-kit v2.x |
+| **model_devi_f_trust_lo** | Float or List of float | 0.05 | Lower bound of forces for the selection. If List, should be set for each index in `sys_configs`, respectively. |
+| **model_devi_f_trust_hi** | Float or List of float | 0.15 | Upper bound of forces for the selection. If List, should be set for each index in `sys_configs`, respectively. |
+| **model_devi_v_trust_lo** | Float or List of float | 1e10 | Lower bound of virial for the selection. If List, should be set for each index in `sys_configs`, respectively. Should be used with DeePMD-kit v2.x. |
+| **model_devi_v_trust_hi** | Float or List of float | 1e10 | Upper bound of virial for the selection. If List, should be set for each index in `sys_configs`, respectively. Should be used with DeePMD-kit v2.x. |
| model_devi_adapt_trust_lo | Boolean | False | Adaptively determines the lower trust levels of force and virial. This option should be used together with `model_devi_numb_candi_f`, `model_devi_numb_candi_v` and optionally with `model_devi_perc_candi_f` and `model_devi_perc_candi_v`. `dpgen` will make two sets: 1. From the frames with force model deviation lower than `model_devi_f_trust_hi`, select `max(model_devi_numb_candi_f, model_devi_perc_candi_f*n_frames)` frames with largest force model deviation. 2. From the frames with virial model deviation lower than `model_devi_v_trust_hi`, select `max(model_devi_numb_candi_v, model_devi_perc_candi_v*n_frames)` frames with largest virial model deviation. The union of the two sets is made as candidate dataset|
| model_devi_numb_candi_f | Int | 10 | See `model_devi_adapt_trust_lo`.|
| model_devi_numb_candi_v | Int | 0 | See `model_devi_adapt_trust_lo`.|
| model_devi_perc_candi_f | Float | 0.0 | See `model_devi_adapt_trust_lo`.|
| model_devi_perc_candi_v | Float | 0.0 | See `model_devi_adapt_trust_lo`.|
| model_devi_f_avg_relative | Boolean | False | Normalized the force model deviations by the RMS force magnitude along the trajectory. This key should not be used with `use_relative`. |
-| **model_devi_clean_traj** | Boolean | true | Deciding whether to clean traj folders in MD since they are too large. |
+| **model_devi_clean_traj** | Boolean or Int | true | If type of model_devi_clean_traj is boolean type then it denote whether to clean traj folders in MD since they are too large. If it is Int type, then the most recent n iterations of traj folders will be retained, others will be removed. |
| **model_devi_nopbc** | Boolean | False | Assume open boundary condition in MD simulations. |
| model_devi_activation_func | List of list of string | [["tanh","tanh"],["tanh","gelu"],["gelu","tanh"],["gelu","gelu"]] | Set activation functions for models, length of the List should be the same as `numb_models`, and two elements in the list of string respectively assign activation functions to the embedding and fitting nets within each model. *Backward compatibility*: the orginal "List of String" format is still supported, where embedding and fitting nets of one model use the same activation function, and the length of the List should be the same as `numb_models`|
| **model_devi_jobs** | [
{
"sys_idx": [0],
"temps":
[100],
"press":
[1],
"trj_freq":
10,
"nsteps":
1000,
"ensembles":
"nvt"
},
...
] | List of dict | Settings for exploration in `01.model_devi`. Each dict in the list corresponds to one iteration. The index of `model_devi_jobs` exactly accord with index of iterations |
diff --git a/conda/meta.yaml b/conda/meta.yaml
index c599c642f..e5480ba7a 100644
--- a/conda/meta.yaml
+++ b/conda/meta.yaml
@@ -25,6 +25,9 @@ requirements:
- requests
- dpdata
- dpdispatcher
+ - ase
+ - GromacsWrapper
+ - custodian
run:
- python >=3.6
@@ -34,6 +37,9 @@ requirements:
- dpdata
- dpdispatcher
- pymatgen
+ - ase
+ - GromacsWrapper
+ - custodian
test:
imports:
diff --git a/doc/conf.py b/doc/conf.py
index 4bc4d16d6..f31e2b3eb 100644
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -38,6 +38,7 @@
# ]
extensions = [
+ 'deepmodeling_sphinx',
"sphinx_rtd_theme",
'myst_parser',
'sphinx.ext.autosummary',
diff --git a/doc/requirements.txt b/doc/requirements.txt
index df6eb698d..e1b2ed852 100644
--- a/doc/requirements.txt
+++ b/doc/requirements.txt
@@ -3,3 +3,4 @@ recommonmark==0.7.1
sphinx_rtd_theme==0.5.2
sphinx_markdown_tables==0.0.15
myst-parser==0.13.7
+deepmodeling_sphinx
diff --git a/dpgen/auto_test/EOS.py b/dpgen/auto_test/EOS.py
index b69db6e1c..4f332198b 100644
--- a/dpgen/auto_test/EOS.py
+++ b/dpgen/auto_test/EOS.py
@@ -169,8 +169,8 @@ def _compute_lower(self,
# vol = self.vol_start + ii * self.vol_step
vol = loadfn(os.path.join(all_tasks[ii], 'eos.json'))['volume']
task_result = loadfn(all_res[ii])
- res_data[vol] = task_result['energies'][-1] / task_result['atom_numbs'][0]
- ptr_data += '%7.3f %8.4f \n' % (vol, task_result['energies'][-1] / task_result['atom_numbs'][0])
+ res_data[vol] = task_result['energies'][-1] / sum(task_result['atom_numbs'])
+ ptr_data += '%7.3f %8.4f \n' % (vol, task_result['energies'][-1] / sum(task_result['atom_numbs']))
# res_data[vol] = all_res[ii]['energy'] / len(all_res[ii]['force'])
# ptr_data += '%7.3f %8.4f \n' % (vol, all_res[ii]['energy'] / len(all_res[ii]['force']))
diff --git a/dpgen/auto_test/VASP.py b/dpgen/auto_test/VASP.py
index 410bde02c..61cbeb931 100644
--- a/dpgen/auto_test/VASP.py
+++ b/dpgen/auto_test/VASP.py
@@ -140,8 +140,8 @@ def make_input_file(self,
incar['ENCUT'] = cal_setting['encut']
if 'kspacing' in cal_setting:
- dlog.info("%s setting KSAPCING to %s" % (self.make_input_file.__name__, cal_setting['kspacing']))
- incar['KSAPCING'] = cal_setting['kspacing']
+ dlog.info("%s setting KSPACING to %s" % (self.make_input_file.__name__, cal_setting['kspacing']))
+ incar['KSPACING'] = cal_setting['kspacing']
if 'kgamma' in cal_setting:
dlog.info("%s setting KGAMMA to %s" % (self.make_input_file.__name__, cal_setting['kgamma']))
diff --git a/dpgen/auto_test/common_equi.py b/dpgen/auto_test/common_equi.py
index 8754bb2e6..4be84b008 100644
--- a/dpgen/auto_test/common_equi.py
+++ b/dpgen/auto_test/common_equi.py
@@ -79,6 +79,9 @@ def make_equi(confs,
poscar = os.path.abspath(os.path.join(ii, 'POSCAR'))
if not os.path.exists(poscar):
raise FileNotFoundError('no configuration for autotest')
+ if os.path.exists(os.path.join(ii, 'relaxation', 'jr.json')):
+ os.remove(os.path.join(ii, 'relaxation', 'jr.json'))
+
relax_dirs = os.path.abspath(os.path.join(ii, 'relaxation', 'relax_task')) # to be consistent with property in make dispatcher
create_path(relax_dirs)
task_dirs.append(relax_dirs)
@@ -111,46 +114,6 @@ def make_equi(confs,
inter.make_input_file(ii, 'relaxation', relax_param)
-def worker(work_path,
- run_task,
- forward_common_files,
- forward_files,
- backward_files,
- mdata,
- inter_type):
- machine, resources, command, group_size = util.get_machine_info(mdata, inter_type)
- disp = make_dispatcher(machine, resources, work_path, [run_task], group_size)
- print("%s --> Runing... " % (work_path))
-
- api_version = mdata.get('api_version', '0.9')
- if LooseVersion(api_version) < LooseVersion('1.0'):
- warnings.warn(f"the dpdispatcher will be updated to new version."
- f"And the interface may be changed. Please check the documents for more details")
- disp.run_jobs(resources,
- command,
- work_path,
- [run_task],
- group_size,
- forward_common_files,
- forward_files,
- backward_files,
- outlog='outlog',
- errlog='errlog')
- elif LooseVersion(api_version) >= LooseVersion('1.0'):
- submission = make_submission(
- mdata_machine=machine,
- mdata_resource=resources,
- commands=[command],
- work_path=work_path,
- run_tasks=run_task,
- group_size=group_size,
- forward_common_files=forward_common_files,
- forward_files=forward_files,
- backward_files=backward_files,
- outlog='outlog',
- errlog='errlog'
- )
- submission.run_submission()
def run_equi(confs,
inter_param,
@@ -163,18 +126,16 @@ def run_equi(confs,
conf_dirs.sort()
processes = len(conf_dirs)
- pool = Pool(processes=processes)
- print("Submit job via %d processes" % processes)
# generate a list of task names like mp-xxx/relaxation/relax_task
# ...
work_path_list = []
for ii in conf_dirs:
- work_path_list.append(os.path.abspath(os.path.join(ii, 'relaxation')))
+ work_path_list.append(os.path.join(ii, 'relaxation'))
all_task = []
for ii in work_path_list:
all_task.append(os.path.join(ii, 'relax_task'))
-
+ run_tasks = all_task
inter_type = inter_param['type']
# vasp
if inter_type == "vasp":
@@ -183,7 +144,7 @@ def run_equi(confs,
mdata = convert_mdata(mdata, ["model_devi"])
else:
raise RuntimeError("unknown task %s, something wrong" % inter_type)
-
+
# dispatch the tasks
# POSCAR here is useless
virtual_calculator = make_calculator(inter_param, "POSCAR")
@@ -191,33 +152,43 @@ def run_equi(confs,
forward_common_files = virtual_calculator.forward_common_files()
backward_files = virtual_calculator.backward_files()
# backward_files += logs
- # ...
- run_tasks = util.collect_task(all_task, inter_type)
- if len(run_tasks) == 0:
- return
- else:
- run_tasks = [os.path.basename(ii) for ii in all_task]
- machine, resources, command, group_size = util.get_machine_info(mdata, inter_type)
- print('%d tasks will be submited '%len(run_tasks))
- multiple_ret = []
- for ii in range(len(work_path_list)):
- work_path = work_path_list[ii]
-
- ret = pool.apply_async(worker, (work_path,
- run_tasks[ii],
- forward_common_files,
- forward_files,
- backward_files,
- mdata,
- inter_type,
- ))
- multiple_ret.append(ret)
- pool.close()
- pool.join()
- for ii in range(len(multiple_ret)):
- if not multiple_ret[ii].successful():
- raise RuntimeError("Task %d is not successful! work_path: %s " % (ii, work_path_list[ii]))
- print('finished')
+ machine, resources, command, group_size = util.get_machine_info(mdata, inter_type)
+ work_path = os.getcwd()
+ print("%s --> Runing... " % (work_path))
+
+ api_version = mdata.get('api_version', '0.9')
+ if LooseVersion(api_version) < LooseVersion('1.0'):
+ warnings.warn(f"the dpdispatcher will be updated to new version."
+ f"And the interface may be changed. Please check the documents for more details")
+ disp = make_dispatcher(machine, resources, work_path, run_tasks, group_size)
+ disp.run_jobs(resources,
+ command,
+ work_path,
+ run_tasks,
+ group_size,
+ forward_common_files,
+ forward_files,
+ backward_files,
+ outlog='outlog',
+ errlog='errlog')
+ elif LooseVersion(api_version) >= LooseVersion('1.0'):
+
+ submission = make_submission(
+ mdata_machine=machine,
+ mdata_resources=resources,
+ commands=[command],
+ work_path=work_path,
+ run_tasks=run_tasks,
+ group_size=group_size,
+ forward_common_files=forward_common_files,
+ forward_files=forward_files,
+ backward_files=backward_files,
+ outlog='outlog',
+ errlog='errlog'
+ )
+ submission.run_submission()
+
+
def post_equi(confs, inter_param):
# find all POSCARs and their name like mp-xxx
diff --git a/dpgen/auto_test/common_prop.py b/dpgen/auto_test/common_prop.py
index ffb767c58..6bc7d9241 100644
--- a/dpgen/auto_test/common_prop.py
+++ b/dpgen/auto_test/common_prop.py
@@ -173,6 +173,7 @@ def run_property(confs,
pool.join()
for ii in range(len(multiple_ret)):
if not multiple_ret[ii].successful():
+ print("ERROR:", multiple_ret[ii].get())
raise RuntimeError("Job %d is not successful!" % ii)
print('%d jobs are finished' % len(multiple_ret))
@@ -186,11 +187,11 @@ def worker(work_path,
inter_type):
run_tasks = [os.path.basename(ii) for ii in all_task]
machine, resources, command, group_size = util.get_machine_info(mdata, inter_type)
- disp = make_dispatcher(machine, resources, work_path, run_tasks, group_size)
api_version = mdata.get('api_version', '0.9')
if LooseVersion(api_version) < LooseVersion('1.0'):
warnings.warn(f"the dpdispatcher will be updated to new version."
f"And the interface may be changed. Please check the documents for more details")
+ disp = make_dispatcher(machine, resources, work_path, run_tasks, group_size)
disp.run_jobs(resources,
command,
work_path,
@@ -204,7 +205,7 @@ def worker(work_path,
elif LooseVersion(api_version) >= LooseVersion('1.0'):
submission = make_submission(
mdata_machine=machine,
- mdata_resource=resources,
+ mdata_resources=resources,
commands=[command],
work_path=work_path,
run_tasks=run_tasks,
diff --git a/dpgen/auto_test/lib/lammps.py b/dpgen/auto_test/lib/lammps.py
index 9b2820ffa..a1c225e95 100644
--- a/dpgen/auto_test/lib/lammps.py
+++ b/dpgen/auto_test/lib/lammps.py
@@ -241,6 +241,8 @@ def make_lammps_equi(conf, type_map, interaction, param,
ret += "fix 1 all box/relax iso 0.0 \n"
ret += "minimize %e %e %d %d\n" % (etol, ftol, maxiter, maxeval)
ret += "fix 1 all box/relax aniso 0.0 \n"
+ ret += "minimize %e %e %d %d\n" % (etol, ftol, maxiter, maxeval)
+ ret += "fix 1 all box/relax tri 0.0 \n"
ret += "minimize %e %e %d %d\n" % (etol, ftol, maxiter, maxeval)
ret += "variable N equal count(all)\n"
ret += "variable V equal vol\n"
diff --git a/dpgen/data/gen.py b/dpgen/data/gen.py
index 1cac205d0..b14034c1d 100644
--- a/dpgen/data/gen.py
+++ b/dpgen/data/gen.py
@@ -23,6 +23,8 @@
from distutils.version import LooseVersion
from dpgen.generator.lib.vasp import incar_upper
from dpgen.generator.lib.utils import symlink_user_forward_files
+from dpgen.generator.lib.abacus_scf import get_abacus_input_parameters, get_abacus_STRU, make_supercell_abacus, make_abacus_scf_stru\
+ , make_kspacing_kpoints_stru, make_abacus_scf_kpt
from pymatgen.core import Structure
from pymatgen.io.vasp import Incar
from dpgen.remote.decide_machine import convert_mdata
@@ -127,6 +129,23 @@ def poscar_ele(poscar_in, poscar_out, eles, natoms) :
with open(poscar_out, 'w') as fout :
fout.write("".join(lines))
+def stru_ele(supercell_stru, stru_out, eles, natoms, jdata, path_work):
+ supercell_stru["types"] = []
+ supercell_stru["atom_numbs"] = list(natoms)
+ for iele in range(len(natoms)):
+ for iatom in range(natoms[iele]):
+ supercell_stru["types"].append(iele)
+ pp_file_names = [os.path.basename(a) for a in jdata['potcars']]
+ supercell_stru["atom_masses"] = jdata["atom_masses"]
+ supercell_stru["atom_names"] = eles
+ stru_text = make_abacus_scf_stru(supercell_stru, pp_file_names)
+ with open(stru_out, "w") as f:
+ f.write(stru_text)
+ absolute_pp_file_path = [os.path.abspath(a) for a in jdata["potcars"]]
+ for ipp, pp_file in enumerate(absolute_pp_file_path):
+ os.symlink(pp_file, os.path.join(path_work, pp_file_names[ipp]))
+
+
def poscar_natoms(lines) :
numb_atoms = 0
for ii in lines[6].split() :
@@ -145,6 +164,17 @@ def poscar_shuffle(poscar_in, poscar_out) :
with open(poscar_out, 'w') as fout:
fout.write("".join(out_lines))
+def shuffle_stru_data(supercell_stru):
+ atom_numb = sum(supercell_stru["atom_numbs"])
+ assert(np.shape(supercell_stru["coords"]) == (atom_numb, 3))
+ new_coord = np.zeros([atom_numb, 3])
+ order = np.arange(0, atom_numb)
+ np.random.shuffle(order)
+ for idx in range(atom_numb):
+ new_coord[idx] = supercell_stru["coords"][order[idx]]
+ supercell_stru['coords'] = new_coord
+ return supercell_stru
+
def poscar_scale_direct (str_in, scale) :
lines = str_in.copy()
numb_atoms = poscar_natoms(lines)
@@ -182,6 +212,16 @@ def poscar_scale (poscar_in, poscar_out, scale) :
with open(poscar_out, 'w') as fout:
fout.write("".join(lines))
+def poscar_scale_abacus(poscar_in, poscar_out, scale, jdata):
+ stru = get_abacus_STRU(poscar_in, n_ele=len(jdata["elements"]))
+ stru["cells"] *= scale
+ stru["coords"] *= scale
+ pp_files = [os.path.basename(a) for a in jdata['potcars']]
+ ret = make_abacus_scf_stru(stru, pp_files)
+ with open(poscar_out, "w") as fp:
+ fp.write(ret)
+
+
def make_unit_cell (jdata) :
latt = jdata['latt']
out_dir = jdata['out_dir']
@@ -197,6 +237,24 @@ def make_unit_cell (jdata) :
fp.write (cell_type.poscar_unit(latt))
os.chdir(cwd)
+def make_unit_cell_ABACUS (jdata) :
+ latt = jdata['latt']
+ out_dir = jdata['out_dir']
+ path_uc = os.path.join(out_dir, global_dirname_02)
+ cell_type = class_cell_type(jdata)
+ cwd = os.getcwd()
+ path_work = create_path(path_uc)
+ os.chdir(path_work)
+ with open('POSCAR.unit', 'w') as fp:
+ fp.write (cell_type.poscar_unit(latt))
+ stru_data = dpdata.System("POSCAR.unit", fmt = 'vasp/poscar').data
+ os.chdir(cwd)
+ stru_data['coords'] = np.squeeze(stru_data['coords'])
+ stru_data['cells'] = np.squeeze(stru_data['cells'])
+ del stru_data["atom_names"]
+ return stru_data
+
+
def make_super_cell (jdata) :
out_dir = jdata['out_dir']
super_cell = jdata['super_cell']
@@ -216,6 +274,28 @@ def make_super_cell (jdata) :
from_struct.make_supercell(super_cell)
from_struct.to('poscar',to_file)
+def make_super_cell_ABACUS (jdata, stru_data) :
+ out_dir = jdata['out_dir']
+ super_cell = jdata['super_cell']
+ path_uc = os.path.join(out_dir, global_dirname_02)
+ path_sc = os.path.join(out_dir, global_dirname_02)
+ assert(os.path.isdir(path_uc)), "path %s should exists" % path_uc
+ assert(os.path.isdir(path_sc)), "path %s should exists" % path_sc
+
+ # for ii in scale :
+ #from_path = path_uc
+ #from_file = os.path.join(from_path, 'POSCAR.unit')
+ #to_path = path_sc
+ #to_file = os.path.join(to_path, 'POSCAR')
+
+ #minor bug for element symbol behind the coordinates
+ #from_struct=Structure.from_file(from_file)
+ #from_struct.make_supercell(super_cell)
+ #from_struct.to('poscar',to_file)
+ supercell_stru = make_supercell_abacus(stru_data, super_cell)
+ return supercell_stru
+
+
def make_super_cell_poscar(jdata) :
out_dir = jdata['out_dir']
super_cell = jdata['super_cell']
@@ -255,6 +335,53 @@ def make_super_cell_poscar(jdata) :
pass
os.chdir(cwd)
+def make_super_cell_STRU(jdata) :
+ out_dir = jdata['out_dir']
+ super_cell = jdata['super_cell']
+ path_sc = os.path.join(out_dir, global_dirname_02)
+ create_path(path_sc)
+ from_poscar_path = jdata['from_poscar_path']
+ assert(os.path.isfile(from_poscar_path)), "file %s should exists" % from_poscar_path
+
+ from_file = os.path.join(path_sc, 'STRU.copied')
+ shutil.copy2(from_poscar_path, from_file)
+ to_path = path_sc
+ to_file = os.path.join(to_path, 'STRU')
+
+ from_struct=get_abacus_STRU(from_file, n_ele=len(jdata["elements"]))
+ from_struct = make_supercell_abacus(from_struct, super_cell)
+ pp_file_names = [os.path.basename(a) for a in jdata['potcars']]
+ stru_text = make_abacus_scf_stru(from_struct, pp_file_names)
+ with open(to_file, "w") as fp:
+ fp.write(stru_text)
+ # if kspacing is specified in json file, use kspacing to generate KPT (rather than directly using specified KPT).
+ if 'relax_kspacing' in jdata:
+ kpoints = make_kspacing_kpoints_stru(from_struct, jdata['relax_kspacing'])
+ kpt_text = make_abacus_scf_kpt({"k_points": kpoints})
+ with open(os.path.join(to_path, 'KPT'), "w") as fp:
+ fp.write(kpt_text)
+ # make system dir (copy)
+ natoms_list = from_struct['atom_numbs']
+ dlog.info(natoms_list)
+ comb_name = "sys-"
+ for idx,ii in enumerate(natoms_list) :
+ comb_name += "%04d" % ii
+ if idx != len(natoms_list)-1 :
+ comb_name += "-"
+ path_work = os.path.join(path_sc, comb_name)
+ create_path(path_work)
+ cwd = os.getcwd()
+ absolute_pp_file_path = [os.path.abspath(a) for a in jdata['potcars']]
+ to_file = os.path.abspath(to_file)
+ os.chdir(path_work)
+ try:
+ os.symlink(os.path.relpath(to_file), 'STRU')
+ for ipp, pp_file in enumerate(absolute_pp_file_path):
+ os.symlink(pp_file, pp_file_names[ipp]) # create pseudo-potential files
+ except FileExistsError:
+ pass
+ os.chdir(cwd)
+
def make_combines (dim, natoms) :
if dim == 1 :
return [[natoms]]
@@ -299,6 +426,40 @@ def place_element (jdata) :
poscar_ele(pos_in, pos_out, elements, ii)
poscar_shuffle(pos_out, pos_out)
+def place_element_ABACUS(jdata, supercell_stru):
+ out_dir = jdata['out_dir']
+ super_cell = jdata['super_cell']
+ cell_type = class_cell_type(jdata)
+ natoms = sum(supercell_stru['atom_numbs'])
+ elements = jdata['elements']
+ #path_sc = os.path.join(out_dir, global_dirname_02)
+ path_pe = os.path.join(out_dir, global_dirname_02)
+ combines = np.array(make_combines(len(elements), natoms), dtype = int)
+ # if kspacing is specified in json file, use kspacing to generate KPT (rather than directly using specified KPT).
+ if 'relax_kspacing' in jdata:
+ kpoints = make_kspacing_kpoints_stru(supercell_stru)
+ kpt_text = make_abacus_scf_kpt({"k_points": kpoints})
+ with open(os.path.join(path_pe, 'KPT')) as fp:
+ fp.write(kpt_text)
+ assert(os.path.isdir(path_pe))
+ cwd = os.getcwd()
+ for ii in combines :
+ if any(ii == 0) :
+ continue
+ comb_name = "sys-"
+ for idx,jj in enumerate(ii) :
+ comb_name += "%04d" % jj
+ if idx != len(ii)-1 :
+ comb_name += "-"
+ #path_pos_in = path_sc
+ path_work = os.path.join(path_pe, comb_name)
+ create_path(path_work)
+ #pos_in = os.path.join(path_pos_in, 'POSCAR')
+ pos_out = os.path.join(path_work, 'STRU')
+ supercell_stru = shuffle_stru_data(supercell_stru)
+ stru_ele(supercell_stru, pos_out, elements, ii, jdata, path_work)
+
+
def make_vasp_relax (jdata, mdata) :
out_dir = jdata['out_dir']
potcars = jdata['potcars']
@@ -347,6 +508,45 @@ def make_vasp_relax (jdata, mdata) :
work_path=os.path.join(os.path.basename(out_dir),global_dirname_02),
task_format= {"fp" : "sys-*"})
+def make_abacus_relax (jdata, mdata) :
+ out_dir = jdata['out_dir']
+ cwd = os.getcwd()
+ work_dir = os.path.join(out_dir, global_dirname_02)
+ assert (os.path.isdir(work_dir))
+ work_dir = os.path.abspath(work_dir)
+
+ if os.path.isfile(os.path.join(work_dir, 'INPUT' )) :
+ os.remove(os.path.join(work_dir, 'INPUT' ))
+ shutil.copy2( jdata['relax_incar'],
+ os.path.join(work_dir, 'INPUT'))
+
+ if 'relax_kspacing' not in jdata:
+ if os.path.isfile(os.path.join(work_dir, 'KPT' )) :
+ os.remove(os.path.join(work_dir, 'KPT' ))
+ assert('relax_kpt' in jdata)
+ #print(jdata['relax_kpt'])
+ jdata['relax_kpt'] = os.path.relpath(jdata['relax_kpt'])
+ shutil.copy2( jdata['relax_kpt'],
+ os.path.join(work_dir, 'KPT'))
+
+ os.chdir(work_dir)
+
+ sys_list = glob.glob('sys-*')
+ for ss in sys_list:
+ os.chdir(ss)
+ ln_src = os.path.relpath(os.path.join(work_dir,'INPUT'))
+ kpt_src = os.path.relpath(os.path.join(work_dir,'KPT'))
+ try:
+ os.symlink(ln_src, 'INPUT')
+ os.symlink(kpt_src, 'KPT')
+ except FileExistsError:
+ pass
+ os.chdir(work_dir)
+ os.chdir(cwd)
+ symlink_user_forward_files(mdata=mdata, task_type="fp",
+ work_path=os.path.join(os.path.basename(out_dir),global_dirname_02),
+ task_format= {"fp" : "sys-*"})
+
def make_scale(jdata):
out_dir = jdata['out_dir']
scale = jdata['scale']
@@ -379,14 +579,51 @@ def make_scale(jdata):
os.chdir(scale_path)
poscar_scale(pos_src, 'POSCAR', jj)
os.chdir(cwd)
-
+
+def make_scale_ABACUS(jdata):
+ out_dir = jdata['out_dir']
+ scale = jdata['scale']
+ skip_relax = jdata['skip_relax']
+
+ cwd = os.getcwd()
+ init_path = os.path.join(out_dir, global_dirname_02)
+ init_path = os.path.abspath(init_path)
+ work_path = os.path.join(out_dir, global_dirname_03)
+ os.chdir(init_path)
+ init_sys = glob.glob("sys-*")
+ init_sys.sort()
+ os.chdir(cwd)
+
+ create_path(work_path)
+ for ii in init_sys :
+ for jj in scale :
+ if skip_relax :
+ pos_src = os.path.join(os.path.join(init_path, ii), 'STRU')
+ assert(os.path.isfile(pos_src))
+ else :
+ try:
+ pos_src = os.path.join(os.path.join(init_path, ii), 'OUT.ABACUS/STRU_ION_D')
+ assert(os.path.isfile(pos_src))
+ except:
+ raise RuntimeError("not file %s, vasp relaxation should be run before scale poscar")
+ scale_path = os.path.join(work_path, ii)
+ scale_path = os.path.join(scale_path, "scale-%.3f" % jj)
+ create_path(scale_path)
+ os.chdir(scale_path)
+ poscar_scale_abacus(pos_src, 'STRU', jj, jdata)
+ os.chdir(cwd)
+
+
def pert_scaled(jdata) :
+ if "init_fp_style" not in jdata:
+ jdata["init_fp_style"] = "VASP"
out_dir = jdata['out_dir']
scale = jdata['scale']
pert_box = jdata['pert_box']
pert_atom = jdata['pert_atom']
pert_numb = jdata['pert_numb']
+ pp_file = [os.path.basename(a) for a in jdata['potcars']]
from_poscar = False
if 'from_poscar' in jdata :
from_poscar = jdata['from_poscar']
@@ -402,7 +639,12 @@ def pert_scaled(jdata) :
pert_cmd = os.path.dirname(__file__)
pert_cmd = os.path.join(pert_cmd, 'tools')
pert_cmd = os.path.join(pert_cmd, 'create_random_disturb.py')
- pert_cmd = 'python3 ' + pert_cmd + ' -etmax %f -ofmt vasp POSCAR %d %f > /dev/null' %(pert_box, pert_numb, pert_atom)
+ fp_style = "vasp"
+ poscar_name = "POSCAR"
+ if jdata['init_fp_style'] == "ABACUS":
+ fp_style = "abacus"
+ poscar_name = "STRU"
+ pert_cmd = 'python3 ' + pert_cmd + ' -etmax %f -ofmt %s %s %d %f > /dev/null' %(pert_box, fp_style, poscar_name, pert_numb, pert_atom)
for ii in sys_pe :
for jj in scale :
path_work = path_sp
@@ -412,22 +654,46 @@ def pert_scaled(jdata) :
os.chdir(path_work)
sp.check_call(pert_cmd, shell = True)
for kk in range(pert_numb) :
- pos_in = 'POSCAR%d.vasp' % (kk+1)
+ if fp_style == "vasp":
+ pos_in = 'POSCAR%d.vasp' % (kk+1)
+ elif fp_style == "abacus":
+ pos_in = 'STRU%d.abacus' % (kk+1)
dir_out = '%06d' % (kk+1)
create_path(dir_out)
- pos_out = os.path.join(dir_out, 'POSCAR')
+ if fp_style == "vasp":
+ pos_out = os.path.join(dir_out, 'POSCAR')
+ elif fp_style == "abacus":
+ pos_out = os.path.join(dir_out, 'STRU')
if not from_poscar:
- poscar_shuffle(pos_in, pos_out)
+ if fp_style == "vasp":
+ poscar_shuffle(pos_in, pos_out)
+ elif fp_style == "abacus":
+ stru_in = get_abacus_STRU(pos_in)
+ stru_out = shuffle_stru_data(stru_in)
+ with open(pos_out, "w") as fp:
+ fp.write(make_abacus_scf_stru(stru_out, pp_file))
else :
shutil.copy2(pos_in, pos_out)
os.remove(pos_in)
kk = -1
- pos_in = 'POSCAR'
+ if fp_style == "vasp":
+ pos_in = 'POSCAR'
+ elif fp_style == "abacus":
+ pos_in = 'STRU'
dir_out = '%06d' % (kk+1)
create_path(dir_out)
- pos_out = os.path.join(dir_out, 'POSCAR')
+ if fp_style == "vasp":
+ pos_out = os.path.join(dir_out, 'POSCAR')
+ elif fp_style == "abacus":
+ pos_out = os.path.join(dir_out, 'STRU')
if not from_poscar:
- poscar_shuffle(pos_in, pos_out)
+ if fp_style == "vasp":
+ poscar_shuffle(pos_in, pos_out)
+ elif fp_style == "abacus":
+ stru_in = get_abacus_STRU(pos_in)
+ stru_out = shuffle_stru_data(stru_in)
+ with open(pos_out, "w") as fp:
+ fp.write(make_abacus_scf_stru(stru_out, pp_file))
else :
shutil.copy2(pos_in, pos_out)
os.chdir(cwd)
@@ -500,7 +766,78 @@ def make_vasp_md(jdata, mdata) :
symlink_user_forward_files(mdata=mdata, task_type="fp",
work_path=os.path.join(os.path.basename(out_dir),global_dirname_04),
task_format= {"fp" :"sys-*/scale*/00*"})
-
+
+def make_abacus_md(jdata, mdata) :
+ out_dir = jdata['out_dir']
+ potcars = jdata['potcars']
+ scale = jdata['scale']
+ pert_numb = jdata['pert_numb']
+ md_nstep = jdata['md_nstep']
+
+ cwd = os.getcwd()
+ path_ps = os.path.join(out_dir, global_dirname_03)
+ path_ps = os.path.abspath(path_ps)
+ assert(os.path.isdir(path_ps))
+ os.chdir(path_ps)
+ sys_ps = glob.glob('sys-*')
+ sys_ps.sort()
+ os.chdir(cwd)
+ path_md = os.path.join(out_dir, global_dirname_04)
+ path_md = os.path.abspath(path_md)
+ create_path(path_md)
+ shutil.copy2(jdata['md_incar'],
+ os.path.join(path_md, 'INPUT'))
+ if 'md_kpt' in jdata:
+ shutil.copy2(jdata['md_kpt'],
+ os.path.join(path_md, 'KPT'))
+ for pp_file in jdata['potcars']:
+ shutil.copy2(pp_file,
+ os.path.join(path_md, os.path.basename(pp_file)))
+ os.chdir(path_md)
+ os.chdir(cwd)
+
+
+
+ for ii in sys_ps :
+ for jj in scale :
+ for kk in range(pert_numb+1) :
+ path_work = path_md
+ path_work = os.path.join(path_work, ii)
+ path_work = os.path.join(path_work, "scale-%.3f" % jj)
+ path_work = os.path.join(path_work, "%06d" % kk)
+ create_path(path_work)
+ os.chdir(path_work)
+ path_pos = path_ps
+ path_pos = os.path.join(path_pos, ii)
+ path_pos = os.path.join(path_pos, "scale-%.3f" % jj)
+ path_pos = os.path.join(path_pos, "%06d" % kk)
+ init_pos = os.path.join(path_pos, 'STRU')
+ if "md_kspacing" in jdata:
+ init_stru = get_abacus_STRU(init_pos)
+ kpoints = make_kspacing_kpoints_stru(init_stru, jdata['md_kspacing'])
+ kpt_text = make_abacus_scf_kpt({"k_points": kpoints})
+ with open(os.path.join(path_md, 'KPT'), "w") as fp:
+ fp.write(kpt_text)
+ shutil.copy2 (init_pos, 'STRU')
+ file_incar = os.path.join(path_md, 'INPUT')
+ file_kpt = os.path.join(path_md, 'KPT')
+ try:
+ os.symlink(os.path.relpath(file_incar), 'INPUT')
+ os.symlink(os.path.relpath(file_kpt), 'KPT')
+ except FileExistsError:
+ pass
+ try:
+ for pp_file in [os.path.basename(a) for a in jdata['potcars']]:
+ os.symlink(os.path.relpath(os.path.join(path_md, pp_file)), pp_file)
+ except FileExistsError:
+ pass
+
+ os.chdir(cwd)
+
+ symlink_user_forward_files(mdata=mdata, task_type="fp",
+ work_path=os.path.join(os.path.basename(out_dir),global_dirname_04),
+ task_format= {"fp" :"sys-*/scale*/00*"})
+
def coll_vasp_md(jdata) :
out_dir = jdata['out_dir']
@@ -638,6 +975,127 @@ def run_vasp_relax(jdata, mdata):
errlog = 'fp.log')
submission.run_submission()
+def coll_abacus_md(jdata) :
+ out_dir = jdata['out_dir']
+ md_nstep = jdata['md_nstep']
+ scale = jdata['scale']
+ pert_numb = jdata['pert_numb']
+ coll_ndata = jdata['coll_ndata']
+
+ cwd = os.getcwd()
+ path_md = os.path.join(out_dir, global_dirname_04)
+ path_md = os.path.abspath(path_md)
+ assert(os.path.isdir(path_md)), "md path should exists"
+ os.chdir(path_md)
+ sys_md = glob.glob('sys-*')
+ sys_md.sort()
+
+ for ii in sys_md :
+ os.chdir(ii)
+ # convert outcars
+ valid_outcars = []
+ for jj in scale :
+ for kk in range(pert_numb+1) :
+ path_work = os.path.join("scale-%.3f" % jj, "%06d" % kk)
+ print("path_work = %s" %path_work)
+ #outcar = os.path.join(path_work, 'OUT.ABACUS/')
+ outcar = path_work
+ #dlog.info("OUTCAR",outcar)
+ if os.path.exists(os.path.join(outcar, "OUT.ABACUS/running_md.log")) :
+ with open(os.path.join(outcar, "OUT.ABACUS/running_md.log")) as fp:
+ if "!FINAL_ETOT_IS" in fp.read():
+ valid_outcars.append(outcar)
+ print(outcar)
+ else:
+ dlog.info("WARNING : file %s does not have !FINAL_ETOT_IS note. MD simulation is not completed normally."%os.path.join(outcar, "OUT.ABACUS/running_md.log"))
+ else:
+ dlog.info("WARNING : in directory %s NO running_md.log file found."%(os.getcwd()))
+ arg_cvt = " "
+ if len(valid_outcars) == 0:
+ raise RuntimeError("MD dir: %s: find no valid OUT.ABACUS in sys %s, "
+ "check if your abacus md simulation is correctly done."
+ % (path_md, ii))
+
+ flag=True
+ if ("type_map" in jdata) and isinstance(jdata["type_map"], list):
+ type_map = jdata["type_map"]
+ else:
+ type_map = None
+ for oo in valid_outcars :
+ if flag:
+ _sys = dpdata.LabeledSystem(oo, type_map= type_map, fmt='abacus/md')
+ if len(_sys)>0:
+ all_sys=_sys
+ flag=False
+ else:
+ pass
+ else:
+ _sys = dpdata.LabeledSystem(oo, type_map= type_map, fmt='abacus/md')
+ if len(_sys)>0:
+ all_sys.append(_sys)
+ # create deepmd data
+ if all_sys.get_nframes() >= coll_ndata :
+ all_sys = all_sys.sub_system(np.arange(coll_ndata))
+ print(all_sys.get_nframes())
+ all_sys.to_deepmd_raw('deepmd')
+ all_sys.to_deepmd_npy('deepmd', set_size = all_sys.get_nframes())
+ os.chdir(path_md)
+ os.chdir(cwd)
+
+def run_abacus_relax(jdata, mdata):
+ fp_command = mdata['fp_command']
+ fp_group_size = mdata['fp_group_size']
+ fp_resources = mdata['fp_resources']
+ #machine_type = mdata['fp_machine']['machine_type']
+ work_dir = os.path.join(jdata['out_dir'], global_dirname_02)
+ pp_files = [os.path.basename(a) for a in jdata["potcars"]]
+ forward_files = ["STRU", "INPUT", "KPT"] + pp_files
+ user_forward_files = mdata.get("fp" + "_user_forward_files", [])
+ forward_files += [os.path.basename(file) for file in user_forward_files]
+ backward_files = ["OUT.ABACUS"]
+ backward_files += mdata.get("fp" + "_user_backward_files", [])
+ forward_common_files = []
+ relax_tasks = glob.glob(os.path.join(work_dir, "sys-*"))
+ relax_tasks.sort()
+ #dlog.info("work_dir",work_dir)
+ #dlog.info("relax_tasks",relax_tasks)
+ if len(relax_tasks) == 0:
+ return
+
+ relax_run_tasks = relax_tasks
+ #for ii in relax_tasks :
+ # if not _vasp_check_fin(ii):
+ # relax_run_tasks.append(ii)
+ run_tasks = [os.path.basename(ii) for ii in relax_run_tasks]
+
+ api_version = mdata.get('api_version', '0.9')
+ if LooseVersion(api_version) < LooseVersion('1.0'):
+ warnings.warn(f"the dpdispatcher will be updated to new version."
+ f"And the interface may be changed. Please check the documents for more details")
+ dispatcher = make_dispatcher(mdata['fp_machine'], mdata['fp_resources'], work_dir, run_tasks, fp_group_size)
+ dispatcher.run_jobs(fp_resources,
+ [fp_command],
+ work_dir,
+ run_tasks,
+ fp_group_size,
+ forward_common_files,
+ forward_files,
+ backward_files)
+
+ elif LooseVersion(api_version) >= LooseVersion('1.0'):
+ submission = make_submission(
+ mdata['fp_machine'],
+ mdata['fp_resources'],
+ commands=[fp_command],
+ work_path=work_dir,
+ run_tasks=run_tasks,
+ group_size=fp_group_size,
+ forward_common_files=forward_common_files,
+ forward_files=forward_files,
+ backward_files=backward_files,
+ outlog = 'fp.log',
+ errlog = 'fp.log')
+ submission.run_submission()
def run_vasp_md(jdata, mdata):
fp_command = mdata['fp_command']
@@ -706,6 +1164,72 @@ def run_vasp_md(jdata, mdata):
errlog = 'fp.log')
submission.run_submission()
+def run_abacus_md(jdata, mdata):
+ fp_command = mdata['fp_command']
+ fp_group_size = mdata['fp_group_size']
+ fp_resources = mdata['fp_resources']
+ #machine_type = mdata['fp_machine']['machine_type']
+ work_dir = os.path.join(jdata['out_dir'], global_dirname_04)
+ scale = jdata['scale']
+ pert_numb = jdata['pert_numb']
+ md_nstep = jdata['md_nstep']
+
+ forward_files = ["STRU", "INPUT", "KPT"]
+ for pp_file in [os.path.basename(a) for a in jdata['potcars']]:
+ forward_files.append(pp_file)
+ user_forward_files = mdata.get("fp" + "_user_forward_files", [])
+ forward_files += [os.path.basename(file) for file in user_forward_files]
+ backward_files = ["OUT.ABACUS"]
+ backward_files += mdata.get("fp" + "_user_backward_files", [])
+ forward_common_files = []
+
+ path_md = work_dir
+ path_md = os.path.abspath(path_md)
+ cwd = os.getcwd()
+ assert(os.path.isdir(path_md)), "md path should exists"
+ md_tasks = glob.glob(os.path.join(work_dir, 'sys-*/scale*/00*'))
+ md_tasks.sort()
+
+ if len(md_tasks) == 0:
+ return
+
+ md_run_tasks = md_tasks
+ #for ii in md_tasks :
+ # if not _vasp_check_fin(ii):
+ # md_run_tasks.append(ii)
+
+ run_tasks = [ii.replace(work_dir+"/", "") for ii in md_run_tasks]
+ #dlog.info("md_work_dir", work_dir)
+ #dlog.info("run_tasks",run_tasks)
+ api_version = mdata.get('api_version', '0.9')
+ if LooseVersion(api_version) < LooseVersion('1.0'):
+ warnings.warn(f"the dpdispatcher will be updated to new version."
+ f"And the interface may be changed. Please check the documents for more details")
+ dispatcher = make_dispatcher(mdata['fp_machine'], mdata['fp_resources'], work_dir, run_tasks, fp_group_size)
+ dispatcher.run_jobs(fp_resources,
+ [fp_command],
+ work_dir,
+ run_tasks,
+ fp_group_size,
+ forward_common_files,
+ forward_files,
+ backward_files)
+
+ elif LooseVersion(api_version) >= LooseVersion('1.0'):
+ submission = make_submission(
+ mdata['fp_machine'],
+ mdata['fp_resources'],
+ commands=[fp_command],
+ work_path=work_dir,
+ run_tasks=run_tasks,
+ group_size=fp_group_size,
+ forward_common_files=forward_common_files,
+ forward_files=forward_files,
+ backward_files=backward_files,
+ outlog = 'fp.log',
+ errlog = 'fp.log')
+ submission.run_submission()
+
def gen_init_bulk(args) :
try:
import ruamel
@@ -736,16 +1260,29 @@ def gen_init_bulk(args) :
from_poscar = jdata['from_poscar']
# Verify md_nstep
md_nstep_jdata = jdata["md_nstep"]
+ if 'init_fp_style' not in jdata:
+ jdata['init_fp_style'] = "VASP"
try:
md_incar = jdata['md_incar']
if os.path.isfile(md_incar):
- standard_incar = incar_upper(Incar.from_file(md_incar))
- nsw_flag = False
- if "NSW" in standard_incar:
- nsw_flag = True
- nsw_steps = standard_incar['NSW']
- #dlog.info("nsw_steps is", nsw_steps)
- #dlog.info("md_nstep_jdata is", md_nstep_jdata)
+ if jdata['init_fp_style'] == "VASP":
+ standard_incar = incar_upper(Incar.from_file(md_incar))
+ nsw_flag = False
+ if "NSW" in standard_incar:
+ nsw_flag = True
+ nsw_steps = standard_incar['NSW']
+ #dlog.info("nsw_steps is", nsw_steps)
+ #dlog.info("md_nstep_jdata is", md_nstep_jdata)
+ elif jdata['init_fp_style'] == "ABACUS":
+ standard_incar = get_abacus_input_parameters(md_incar) # a dictionary in which all of the values are strings
+ nsw_flag = False
+ if "nstep" in standard_incar:
+ nsw_flag = True
+ nsw_steps = int(standard_incar['nstep'])
+ assert("relax_kpt" in jdata or "relax_kspacing" in jdata)
+ if 3 in jdata["stages"]:
+ assert("md_kpt" in jdata or "md_kspacing" in jdata)
+ assert("md_incar" in jdata)
if nsw_flag:
if (nsw_steps != md_nstep_jdata):
dlog.info("WARNING: your set-up for MD steps in PARAM and md_incar are not consistent!")
@@ -769,32 +1306,62 @@ def gen_init_bulk(args) :
dlog.info("Current stage is 1, relax")
create_path(out_dir)
shutil.copy2(args.PARAM, os.path.join(out_dir, 'param.json'))
+ skip_relax = jdata['skip_relax']
if from_poscar :
- make_super_cell_poscar(jdata)
+ if jdata['init_fp_style'] == "VASP":
+ make_super_cell_poscar(jdata)
+ elif jdata['init_fp_style'] == "ABACUS":
+ make_super_cell_STRU(jdata)
else :
- make_unit_cell(jdata)
- make_super_cell(jdata)
- place_element(jdata)
+ if jdata['init_fp_style'] == "VASP":
+ make_unit_cell(jdata)
+ make_super_cell(jdata)
+ place_element(jdata)
+ elif jdata['init_fp_style'] == "ABACUS":
+ stru_data = make_unit_cell_ABACUS(jdata)
+ supercell_stru = make_super_cell_ABACUS(jdata, stru_data)
+ place_element_ABACUS(jdata, supercell_stru)
if args.MACHINE is not None:
- make_vasp_relax(jdata, mdata)
- run_vasp_relax(jdata, mdata)
+ if jdata['init_fp_style'] == "VASP":
+ make_vasp_relax(jdata, mdata)
+ run_vasp_relax(jdata, mdata)
+ elif jdata['init_fp_style'] == "ABACUS":
+ make_abacus_relax(jdata, mdata)
+ run_abacus_relax(jdata, mdata)
else:
- make_vasp_relax(jdata, {"fp_resources":{}})
+ if jdata['init_fp_style'] == "VASP":
+ make_vasp_relax(jdata, {"fp_resources":{}})
+ elif jdata['init_fp_style'] == "ABACUS":
+ make_abacus_relax(jdata, {"fp_resources":{}})
elif stage == 2 :
dlog.info("Current stage is 2, perturb and scale")
- make_scale(jdata)
- pert_scaled(jdata)
+ if jdata['init_fp_style'] == "VASP":
+ make_scale(jdata)
+ pert_scaled(jdata)
+ elif jdata['init_fp_style'] == "ABACUS":
+ make_scale_ABACUS(jdata)
+ pert_scaled(jdata)
elif stage == 3 :
dlog.info("Current stage is 3, run a short md")
if args.MACHINE is not None:
- make_vasp_md(jdata, mdata)
- run_vasp_md(jdata, mdata)
+ if jdata['init_fp_style'] == "VASP":
+ make_vasp_md(jdata, mdata)
+ run_vasp_md(jdata, mdata)
+ elif jdata['init_fp_style'] == "ABACUS":
+ make_abacus_md(jdata, mdata)
+ run_abacus_md(jdata, mdata)
else:
- make_vasp_md(jdata, {"fp_resources":{}})
+ if jdata['init_fp_style'] == "VASP":
+ make_vasp_md(jdata, {"fp_resources":{}})
+ elif jdata['init_fp_style'] == "ABACUS":
+ make_abacus_md(jdata, {"fp_resources":{}})
elif stage == 4 :
dlog.info("Current stage is 4, collect data")
- coll_vasp_md(jdata)
+ if jdata['init_fp_style'] == "VASP":
+ coll_vasp_md(jdata)
+ elif jdata['init_fp_style'] == "ABACUS":
+ coll_abacus_md(jdata)
else :
raise RuntimeError("unknown stage %d" % stage)
diff --git a/dpgen/data/tools/bcc.py b/dpgen/data/tools/bcc.py
index e02483b32..fb96333d5 100644
--- a/dpgen/data/tools/bcc.py
+++ b/dpgen/data/tools/bcc.py
@@ -20,4 +20,3 @@ def poscar_unit (latt) :
ret += "%.16f %.16f %.16f\n" % (0.0, 0.0, 0.0)
ret += "%.16f %.16f %.16f\n" % (0.5, 0.5, 0.5)
return ret
-
diff --git a/dpgen/data/tools/create_random_disturb.py b/dpgen/data/tools/create_random_disturb.py
index 728b8ddf5..542a16096 100755
--- a/dpgen/data/tools/create_random_disturb.py
+++ b/dpgen/data/tools/create_random_disturb.py
@@ -10,6 +10,7 @@
import ase.io
import io_lammps
+from dpgen.generator.lib.abacus_scf import get_abacus_STRU, make_abacus_scf_stru
def create_disturbs_atomsk(fin, nfile, dmax=1.0, ofmt="lmp"):
# removing the exists files
@@ -164,6 +165,68 @@ def create_disturbs_ase_dev(fin, nfile, dmax=1.0, etmax=0.1, ofmt="lmp", dstyle=
fw.close()
return
+def create_disturbs_abacus_dev(fin, nfile, dmax=1.0, etmax=0.1, ofmt="abacus", dstyle='uniform', write_d=False, diag=0):
+ # removing the exists files
+ flist = glob.glob('*.' + ofmt)
+ for f in flist:
+ os.remove(f)
+
+ # read-in by ase
+ #atoms = ase.io.read(fin)
+ #natoms = atoms.get_number_of_atoms()
+ #cell0 = atoms.get_cell()
+
+ stru = get_abacus_STRU(fin)
+ natoms = sum(stru["atom_numbs"])
+ cell0 = stru['cells']
+
+ # creat nfile ofmt files.
+ for fid in range(1, nfile + 1):
+ # Use copy(), otherwise it will modify the input atoms every time.
+ stru_d = stru.copy()
+
+ # random flux for atomic positions
+ if write_d:
+ fw = open('disp-' + str(fid) + '.dat', 'w')
+ dpos = np.zeros((natoms, 3))
+ for i in range(natoms):
+ dr = gen_random_disturb(dmax, -0.5, 0.5, dstyle)
+ dpos[i, :] = dr
+ if write_d:
+ dnorm = np.linalg.norm(dr)
+ fw.write('%d\t%f\t%f\t%f\t%f\n' %
+ (i + 1, dr[0], dr[1], dr[2], dnorm))
+ fw.flush()
+
+ # random flux for volumes
+ cell = np.dot(cell0, gen_random_emat(etmax, diag))
+ stru_d['cells'] = cell
+ if write_d:
+ fout_c = 'cell-' + str(fid) + '.dat'
+ np.savetxt(fout_c, cell, '%f')
+
+ # determine new cell & atomic positions randomiziations
+ stru_d['coords'] += dpos
+
+ # pre-converting the Atoms to be in low tri-angular cell matrix
+ cell_new = io_lammps.convert_cell(cell)
+ #pos_new = io_lammps.convert_positions(pos, cell, cell_new)
+ stru_d['cells'] = cell_new
+
+ convert_mat = np.linalg.inv(cell)*cell_new
+ stru_d['coords'] = np.matmul(stru_d['coords'], convert_mat)
+
+
+ # Writing it
+ fout = fin + str(fid) + '.' + ofmt
+ print("Creating %s ..." % fout)
+ ret = make_abacus_scf_stru(stru_d, stru_d['pp_files'])
+ with open(fout, "w") as fp:
+ fp.write(ret)
+ if write_d:
+ fw.close()
+ return
+
def create_random_alloys(fin, alloy_dist, ifmt='vasp', ofmt='vasp'):
'''
@@ -252,5 +315,9 @@ def RandomDisturbParser():
# main program
#create_disturbs_atomsk(fin, nfile, dmax, ofmt)
#create_disturbs_ase(fin, nfile, dmax, ofmt, dstyle, write_d)
- create_disturbs_ase_dev(fin, nfile, dmax, etmax,
+ if ofmt == "vasp":
+ create_disturbs_ase_dev(fin, nfile, dmax, etmax,
ofmt, dstyle, write_d, diag)
+ elif ofmt == "abacus":
+ create_disturbs_abacus_dev(fin, nfile, dmax, etmax,
+ ofmt, dstyle, write_d, diag)
\ No newline at end of file
diff --git a/dpgen/data/tools/diamond.py b/dpgen/data/tools/diamond.py
index 83f06b8b7..4674ef737 100644
--- a/dpgen/data/tools/diamond.py
+++ b/dpgen/data/tools/diamond.py
@@ -24,4 +24,3 @@ def poscar_unit (latt) :
ret += "%.16f %.16f %.16f\n" % (0.12500000000000, 0.12500000000000, 0.12500000000000)
ret += "%.16f %.16f %.16f\n" % (0.87500000000000, 0.87500000000000, 0.87500000000000)
return ret
-
diff --git a/dpgen/data/tools/fcc.py b/dpgen/data/tools/fcc.py
index be26bff59..ca4640bc1 100644
--- a/dpgen/data/tools/fcc.py
+++ b/dpgen/data/tools/fcc.py
@@ -22,4 +22,3 @@ def poscar_unit (latt) :
ret += "%.16f %.16f %.16f\n" % (0.5, 0.0, 0.5)
ret += "%.16f %.16f %.16f\n" % (0.0, 0.5, 0.5)
return ret
-
diff --git a/dpgen/data/tools/hcp.py b/dpgen/data/tools/hcp.py
index ed31a260f..b2a47ace9 100644
--- a/dpgen/data/tools/hcp.py
+++ b/dpgen/data/tools/hcp.py
@@ -23,4 +23,3 @@ def poscar_unit (latt) :
ret += "%.16f %.16f %.16f\n" % (0, 0, 0)
ret += "%.16f %.16f %.16f\n" % (1./3, 1./3, 1./2)
return ret
-
diff --git a/dpgen/data/tools/sc.py b/dpgen/data/tools/sc.py
index 3b1c4abe5..3e1c33d54 100644
--- a/dpgen/data/tools/sc.py
+++ b/dpgen/data/tools/sc.py
@@ -19,4 +19,3 @@ def poscar_unit (latt) :
ret += "Direct\n"
ret += "%.16f %.16f %.16f\n" % (0.0, 0.0, 0.0)
return ret
-
diff --git a/dpgen/dispatcher/Dispatcher.py b/dpgen/dispatcher/Dispatcher.py
index 655761816..239654b26 100644
--- a/dpgen/dispatcher/Dispatcher.py
+++ b/dpgen/dispatcher/Dispatcher.py
@@ -346,11 +346,17 @@ def make_dispatcher(mdata, mdata_resource=None, work_path=None, run_tasks=None,
def make_submission(mdata_machine, mdata_resources, commands, work_path, run_tasks, group_size,
forward_common_files, forward_files, backward_files, outlog, errlog):
- machine = Machine.load_from_dict(mdata_machine)
- resources = Resources.load_from_dict(mdata_resources)
-
if mdata_machine['local_root'] != './':
raise RuntimeError(f"local_root must be './' in dpgen's machine.json.")
+
+ abs_local_root = os.path.abspath('./')
+
+ abs_mdata_machine = mdata_machine.copy()
+ abs_mdata_machine['local_root'] = abs_local_root
+
+ machine = Machine.load_from_dict(abs_mdata_machine)
+ resources = Resources.load_from_dict(mdata_resources)
+
command = "&&".join(commands)
diff --git a/dpgen/dispatcher/SSHContext.py b/dpgen/dispatcher/SSHContext.py
index 9e355b5ed..35a7e5997 100644
--- a/dpgen/dispatcher/SSHContext.py
+++ b/dpgen/dispatcher/SSHContext.py
@@ -280,7 +280,7 @@ def _put_files(self,
os.chdir(self.local_root)
if os.path.isfile(of) :
os.remove(of)
- with tarfile.open(of, "w:gz", dereference = dereference) as tar:
+ with tarfile.open(of, "w:gz", dereference = dereference, compresslevel=6) as tar:
for ii in files :
tar.add(ii)
os.chdir(cwd)
diff --git a/dpgen/generator/lib/abacus_pw_scf.py b/dpgen/generator/lib/abacus_pw_scf.py
deleted file mode 100644
index 5db58cc10..000000000
--- a/dpgen/generator/lib/abacus_pw_scf.py
+++ /dev/null
@@ -1,95 +0,0 @@
-import numpy as np
-bohr2ang = 0.52917721067
-def make_abacus_pw_scf_kpt(fp_params):
- # Make KPT file for abacus pw scf calculation.
- # KPT file is the file containing k points infomation in ABACUS scf calculation.
- k_points = [1, 1, 1, 0, 0, 0]
- if "k_points" in fp_params:
- k_points = fp_params["k_points"]
- if len(k_points) != 6:
- raise RuntimeError("k_points has to be a list containig 6 integers specifying MP k points generation.")
- ret = "K_POINTS\n0\nGamma\n"
- for i in range(6):
- ret += str(k_points[i]) + " "
- return ret
-
-def make_abacus_pw_scf_input(fp_params):
- # Make INPUT file for abacus pw scf calculation.
- ret = "INPUT_PARAMETERS\n"
- assert(fp_params['ntype'] >= 0 and type(fp_params["ntype"]) == int)
- ret += "ntype %d\n" % fp_params['ntype']
- ret += "pseudo_dir ./\n"
- if "ecutwfc" in fp_params:
- assert(fp_params["ecutwfc"] >= 0)
- ret += "ecutwfc %f\n" % fp_params["ecutwfc"]
- if "mixing_type" in fp_params:
- assert(fp_params["mixing_type"] in ["plain", "kerker", "pulay", "pulay-kerker", "broyden"])
- ret += "mixing_type %s\n" % fp_params["mixing_type"]
- if "mixing_beta" in fp_params:
- assert(fp_params["mixing_beta"] >= 0 and fp_params["mixing_beta"] < 1)
- ret += "mixing_beta %f\n" % fp_params["mixing_beta"]
- if "symmetry" in fp_params:
- assert(fp_params["symmetry"] == 0 or fp_params["symmetry"] == 1)
- ret += "symmetry %d\n" % fp_params["symmetry"]
- if "nbands" in fp_params:
- assert(fp_params["nbands"] > 0 and type(fp_params["nbands"]) == int)
- ret += "nbands %f\n" % fp_params["nbands"]
- if "nspin" in fp_params:
- assert(fp_params["nspin"] == 1 or fp_params["nspin"] == 2 or fp_params["nspin"] == 4)
- ret += "nspin %d\n" % fp_params["nspin"]
- if "ks_solver" in fp_params:
- assert(fp_params["ks_solver"] in ["cg", "dav", "lapack", "genelpa", "hpseps", "scalapack_gvx"])
- ret += "ks_solver %s\n" % fp_params["ks_solver"]
- if "smearing" in fp_params:
- assert(fp_params["smearing"] in ["gauss", "fd", "fixed", "mp", "mp2", "mv"])
- ret += "smearing %s\n" % fp_params["smearing"]
- if "sigma" in fp_params:
- assert(fp_params["sigma"] >= 0)
- ret += "sigma %f\n" % fp_params["sigma"]
- ret += "force 1\nstress 1\n"
- return ret
-
-def make_abacus_pw_scf_stru(sys_data, fp_pp_files):
- atom_names = sys_data['atom_names']
- atom_numbs = sys_data['atom_numbs']
- assert(len(atom_names) == len(fp_pp_files))
- assert(len(atom_names) == len(atom_numbs))
- cell = sys_data["cells"][0].reshape([3, 3])
- coord = sys_data['coords'][0]
- #volume = np.linalg.det(cell)
- #lattice_const = np.power(volume, 1/3)
- lattice_const = 1/bohr2ang # in Bohr, in this way coord and cell are in Angstrom
-
- ret = "ATOMIC_SPECIES\n"
- for iatom in range(len(atom_names)):
- ret += atom_names[iatom] + " 1.00 " + fp_pp_files[iatom] + "\n"
-
- ret += "\nLATTICE_CONSTANT\n"
- ret += str(lattice_const) + "\n\n"
-
- ret += "LATTICE_VECTORS\n"
- for ix in range(3):
- for iy in range(3):
- ret += str(cell[ix][iy]) + " "
- ret += "\n"
- ret += "\n"
-
- ret += "ATOMIC_POSITIONS\n"
- ret += "Cartesian # Cartesian(Unit is LATTICE_CONSTANT)\n"
- natom_tot = 0
- for iele in range(len(atom_names)):
- ret += atom_names[iele] + "\n"
- ret += "0.0\n"
- ret += str(atom_numbs[iele]) + "\n"
- for iatom in range(atom_numbs[iele]):
- ret += "%.12f %.12f %.12f %d %d %d\n" % (coord[natom_tot, 0], coord[natom_tot, 1], coord[natom_tot, 2], 0, 0, 0)
- natom_tot += 1
- assert(natom_tot == sum(atom_numbs))
-
- return ret
-
-
-if __name__ == "__main__":
- fp_params = {"k_points": [1, 1, 1, 0, 0, 0]}
- ret = make_abacus_pw_scf_kpt(fp_params)
- print(ret)
\ No newline at end of file
diff --git a/dpgen/generator/lib/abacus_scf.py b/dpgen/generator/lib/abacus_scf.py
new file mode 100644
index 000000000..fde813487
--- /dev/null
+++ b/dpgen/generator/lib/abacus_scf.py
@@ -0,0 +1,266 @@
+import numpy as np
+from dpdata.abacus.scf import get_cell, get_coords
+from dpgen.auto_test.lib.vasp import reciprocal_box
+import os
+bohr2ang = 0.52917721067
+def make_abacus_scf_kpt(fp_params):
+ # Make KPT file for abacus pw scf calculation.
+ # KPT file is the file containing k points infomation in ABACUS scf calculation.
+ k_points = [1, 1, 1, 0, 0, 0]
+ if "k_points" in fp_params:
+ k_points = fp_params["k_points"]
+ if len(k_points) != 6:
+ raise RuntimeError("k_points has to be a list containig 6 integers specifying MP k points generation.")
+ ret = "K_POINTS\n0\nGamma\n"
+ for i in range(6):
+ ret += str(k_points[i]) + " "
+ return ret
+
+def make_abacus_scf_input(fp_params):
+ # Make INPUT file for abacus pw scf calculation.
+ ret = "INPUT_PARAMETERS\n"
+ ret += "calculation scf\n"
+ assert(fp_params['ntype'] >= 0 and type(fp_params["ntype"]) == int), "'ntype' should be a positive integer."
+ ret += "ntype %d\n" % fp_params['ntype']
+ #ret += "pseudo_dir ./\n"
+ if "ecutwfc" in fp_params:
+ assert(fp_params["ecutwfc"] >= 0) , "'ntype' should be non-negative."
+ ret += "ecutwfc %f\n" % fp_params["ecutwfc"]
+ if "dr2" in fp_params:
+ ret += "dr2 %e\n" % fp_params["dr2"]
+ if "niter" in fp_params:
+ assert(fp_params['niter'] >= 0 and type(fp_params["niter"])== int), "'niter' should be a positive integer."
+ ret += "niter %d\n" % fp_params["niter"]
+ if "basis_type" in fp_params:
+ assert(fp_params["basis_type"] in ["pw", "lcao", "lcao_in_pw"]) , "'basis_type' must in 'pw', 'lcao' or 'lcao_in_pw'."
+ ret+= "basis_type %s\n" % fp_params["basis_type"]
+ if "dft_functional" in fp_params:
+ ret += "dft_functional %s\n" % fp_params["dft_functional"]
+ if "gamma_only" in fp_params:
+ assert(fp_params["gamma_only"] ==1 ) , "'gamma_only' should be 1. Multi-k algorithm will be supported after the KPT generator is completed."
+ ret+= "gamma_only %d\n" % fp_params["gamma_only"]
+ if "mixing_type" in fp_params:
+ assert(fp_params["mixing_type"] in ["plain", "kerker", "pulay", "pulay-kerker", "broyden"])
+ ret += "mixing_type %s\n" % fp_params["mixing_type"]
+ if "mixing_beta" in fp_params:
+ assert(fp_params["mixing_beta"] >= 0 and fp_params["mixing_beta"] < 1), "'mixing_beta' should between 0 and 1."
+ ret += "mixing_beta %f\n" % fp_params["mixing_beta"]
+ if "symmetry" in fp_params:
+ assert(fp_params["symmetry"] == 0 or fp_params["symmetry"] == 1), "'symmetry' should be either 0 or 1."
+ ret += "symmetry %d\n" % fp_params["symmetry"]
+ if "nbands" in fp_params:
+ assert(fp_params["nbands"] > 0 and type(fp_params["nbands"]) == int), "'nbands' should be a positive integer."
+ ret += "nbands %d\n" % fp_params["nbands"]
+ if "nspin" in fp_params:
+ assert(fp_params["nspin"] == 1 or fp_params["nspin"] == 2 or fp_params["nspin"] == 4), "'nspin' can anly take 1, 2 or 4"
+ ret += "nspin %d\n" % fp_params["nspin"]
+ if "ks_solver" in fp_params:
+ assert(fp_params["ks_solver"] in ["cg", "dav", "lapack", "genelpa", "hpseps", "scalapack_gvx"]), "'ks_sover' should in 'cgx', 'dav', 'lapack', 'genelpa', 'hpseps', 'scalapack_gvx'."
+ ret += "ks_solver %s\n" % fp_params["ks_solver"]
+ if "smearing" in fp_params:
+ assert(fp_params["smearing"] in ["gaussian", "fd", "fixed", "mp", "mp2", "mv"]), "'smearing' should in 'gaussian', 'fd', 'fixed', 'mp', 'mp2', 'mv'. "
+ ret += "smearing %s\n" % fp_params["smearing"]
+ if "sigma" in fp_params:
+ assert(fp_params["sigma"] >= 0), "'sigma' should be non-negative."
+ ret += "sigma %f\n" % fp_params["sigma"]
+ if "force" in fp_params:
+ assert(fp_params["force"] == 0 or fp_params["force"] == 1), "'force' should be either 0 or 1."
+ ret += "force %d\n" % fp_params["force"]
+ if "stress" in fp_params:
+ assert(fp_params["stress"] == 0 or fp_params["stress"] == 1), "'stress' should be either 0 or 1."
+ ret += "stress %d\n" % fp_params["stress"]
+ #paras for deepks
+ if "out_descriptor" in fp_params:
+ assert(fp_params["out_descriptor"] == 0 or fp_params["out_descriptor"] == 1), "'out_descriptor' should be either 0 or 1."
+ ret += "out_descriptor %d\n" % fp_params["out_descriptor"]
+ if "lmax_descriptor" in fp_params:
+ assert(fp_params["lmax_descriptor"] >= 0), "'lmax_descriptor' should be a positive integer."
+ ret += "lmax_descriptor %d\n" % fp_params["lmax_descriptor"]
+ if "deepks_scf" in fp_params:
+ assert(fp_params["deepks_scf"] == 0 or fp_params["deepks_scf"] == 1), "'deepks_scf' should be either 0 or 1."
+ ret += "deepks_scf %d\n" % fp_params["deepks_scf"]
+ if "model_file" in fp_params:
+ ret += "model_file %s\n" % fp_params["model_file"]
+ return ret
+
+def make_abacus_scf_stru(sys_data, fp_pp_files, fp_params = None):
+ atom_names = sys_data['atom_names']
+ atom_numbs = sys_data['atom_numbs']
+ assert(len(atom_names) == len(fp_pp_files)), "the number of pp_files must be equal to the number of atom types. "
+ assert(len(atom_names) == len(atom_numbs)), "Please check the name of atoms. "
+ cell = sys_data["cells"].reshape([3, 3])
+ coord = sys_data['coords'].reshape([sum(atom_numbs), 3])
+ #volume = np.linalg.det(cell)
+ #lattice_const = np.power(volume, 1/3)
+
+ ret = "ATOMIC_SPECIES\n"
+ for iatom in range(len(atom_names)):
+ if 'atom_masses' not in sys_data:
+ ret += atom_names[iatom] + " 1.00 " + fp_pp_files[iatom] + "\n"
+ else:
+ ret += atom_names[iatom] + " %.3f "%sys_data['atom_masses'][iatom] + fp_pp_files[iatom] + "\n"
+
+ if fp_params is not None and "lattice_constant" in fp_params:
+ ret += "\nLATTICE_CONSTANT\n"
+ ret += str(fp_params["lattice_constant"]) + "\n\n" # in Bohr, in this way coord and cell are in Angstrom
+ else:
+ ret += "\nLATTICE_CONSTANT\n"
+ ret += str(1/bohr2ang) + "\n\n"
+
+ ret += "LATTICE_VECTORS\n"
+ for ix in range(3):
+ for iy in range(3):
+ ret += str(cell[ix][iy]) + " "
+ ret += "\n"
+ ret += "\n"
+
+ ret += "ATOMIC_POSITIONS\n"
+ ret += "Cartesian # Cartesian(Unit is LATTICE_CONSTANT)\n"
+ #ret += "\n"
+ natom_tot = 0
+ for iele in range(len(atom_names)):
+ ret += atom_names[iele] + "\n"
+ ret += "0.0\n"
+ ret += str(atom_numbs[iele]) + "\n"
+ for iatom in range(atom_numbs[iele]):
+ ret += "%.12f %.12f %.12f %d %d %d\n" % (coord[natom_tot, 0], coord[natom_tot, 1], coord[natom_tot, 2], 1, 1, 1)
+ natom_tot += 1
+ assert(natom_tot == sum(atom_numbs))
+
+ if fp_params is not None and "basis_type" in fp_params and fp_params["basis_type"]=="lcao":
+ ret +="\nNUMERICAL_ORBITAL\n"
+ assert(len(fp_params["orb_files"])==len(atom_names))
+ for iatom in range(len(atom_names)):
+ ret += fp_params["orb_files"][iatom] +"\n"
+
+ if fp_params is not None and "deepks_scf" in fp_params and fp_params["out_descriptor"]==1:
+ ret +="\nNUMERICAL_DESCRIPTOR\n"
+ ret +=fp_params["proj_file"][0]+"\n"
+
+ return ret
+
+def get_abacus_input_parameters(INPUT):
+ with open(INPUT) as fp:
+ inlines = fp.read().split("\n")
+ input_parameters = {}
+ for line in inlines:
+ if line.split() == [] or len(line.split()) < 2 :
+ continue
+ parameter_name = line.split()[0]
+ parameter_value = line.split()[1]
+ input_parameters[parameter_name] = parameter_value
+ return input_parameters
+
+def get_mass_from_STRU(geometry_inlines, inlines, atom_names):
+ nele = None
+ for line in inlines:
+ if line.split() == []:
+ continue
+ if "ntype" in line and "ntype" == line.split()[0]:
+ nele = int(line.split()[1])
+ assert(nele is not None)
+ mass_list = [0 for i in atom_names]
+ pp_file_list = [i for i in atom_names]
+ for iline, line in enumerate(geometry_inlines):
+ if line.split() == []:
+ continue
+ if "ATOMIC_SPECIES" == line.split()[0]:
+ for iele1 in range(1, 1+nele):
+ for iele2 in range(nele):
+ if geometry_inlines[iline+iele1].split()[0] == atom_names[iele2]:
+ mass_list[iele2] = float(geometry_inlines[iline+iele1].split()[1])
+ pp_file_list[iele2] = geometry_inlines[iline+iele1].split()[2]
+ for iele in range(len(mass_list)):
+ assert(mass_list[iele] > 0)
+ return mass_list, pp_file_list
+
+def get_natoms_from_stru(geometry_inlines):
+ key_words_list = ["ATOMIC_SPECIES", "NUMERICAL_ORBITAL", "LATTICE_CONSTANT", "LATTICE_VECTORS", "ATOMIC_POSITIONS"]
+ keyword_sequence = []
+ keyword_line_index = []
+ atom_names = []
+ atom_numbs = []
+ for iline, line in enumerate(geometry_inlines):
+ if line.split() == []:
+ continue
+ have_key_word = False
+ for keyword in key_words_list:
+ if keyword in line and keyword == line.split()[0]:
+ keyword_sequence.append(keyword)
+ keyword_line_index.append(iline)
+ assert(len(keyword_line_index) == len(keyword_sequence))
+ assert(len(keyword_sequence) > 0)
+ keyword_line_index.append(len(geometry_inlines))
+ for idx, keyword in enumerate(keyword_sequence):
+ if keyword == "ATOMIC_POSITIONS":
+ iline = keyword_line_index[idx]+2
+ while iline < keyword_line_index[idx+1]-1:
+ atom_names.append(geometry_inlines[iline].split()[0])
+ atom_numbs.append(int(geometry_inlines[iline+2].split()[0]))
+ iline += 3+atom_numbs[-1]
+ return atom_names, atom_numbs
+def get_abacus_STRU(STRU, INPUT = None, n_ele = None):
+ # read in geometry from STRU file. n_ele is the number of elements.
+ # Either n_ele or INPUT should be provided.
+ with open(STRU, 'r') as fp:
+ geometry_inlines = fp.read().split('\n')
+ for iline, line in enumerate(geometry_inlines):
+ if line.split() == []:
+ del geometry_inlines[iline]
+ geometry_inlines.append("")
+ celldm, cell = get_cell(geometry_inlines)
+ if n_ele is None and INPUT is not None:
+ assert(os.path.isfile(INPUT)), "file %s should exists" % INPUT
+ with open(INPUT, 'r') as fp:
+ inlines = fp.read().split('\n')
+ atom_names, natoms, types, coords = get_coords(celldm, cell, geometry_inlines, inlines)
+ elif n_ele is not None and INPUT is None:
+ assert(n_ele > 0)
+ inlines = ["ntype %d" %n_ele]
+ atom_names, natoms, types, coords = get_coords(celldm, cell, geometry_inlines, inlines)
+ else:
+ atom_names, atom_numbs = get_natoms_from_stru(geometry_inlines)
+ inlines = ["ntype %d" %len(atom_numbs)]
+ atom_names, natoms, types, coords = get_coords(celldm, cell, geometry_inlines, inlines)
+ masses, pp_files = get_mass_from_STRU(geometry_inlines, inlines, atom_names)
+ data = {}
+ data['atom_names'] = atom_names
+ data['atom_numbs'] = natoms
+ data['atom_types'] = types
+ data['cells'] = cell
+ data['coords'] = coords
+ data['atom_masses'] = masses # Notice that this key is not defined in dpdata system.
+ data['pp_files'] = pp_files
+ return data
+
+def make_supercell_abacus(from_struct, super_cell):
+ if "types" in from_struct:
+ from_struct["types"] = from_struct["types"] * super_cell[0] * super_cell[1] * super_cell[2]
+ for ix in range(super_cell[0]):
+ for iy in range(super_cell[1]):
+ for iz in range(super_cell[2]):
+ if ix == 0 and iy == 0 and iz == 0:
+ continue
+ for ia in range(sum(from_struct["atom_numbs"])):
+ coord = from_struct['coords'][ia] + from_struct['cells'][0]*ix + from_struct['cells'][1]*iy + from_struct['cells'][2]*iz
+ from_struct['coords'] = np.vstack([from_struct['coords'], coord])
+ from_struct["atom_numbs"] = [i * super_cell[0] * super_cell[1] * super_cell[2] for i in from_struct["atom_numbs"]]
+ from_struct['cells'][0] *= super_cell[0]
+ from_struct['cells'][1] *= super_cell[1]
+ from_struct['cells'][2] *= super_cell[2]
+ return from_struct
+
+def make_kspacing_kpoints_stru(stru, kspacing) :
+ # adapted from dpgen.autotest.lib.vasp.make_kspacing_kpoints
+ if type(kspacing) is not list:
+ kspacing = [kspacing, kspacing, kspacing]
+ box = stru['cells']
+ rbox = reciprocal_box(box)
+ kpoints = [max(1,(np.ceil(2 * np.pi * np.linalg.norm(ii) / ks).astype(int))) for ii,ks in zip(rbox,kspacing)]
+ kpoints += [0, 0, 0]
+ return kpoints
+
+if __name__ == "__main__":
+ fp_params = {"k_points": [1, 1, 1, 0, 0, 0]}
+ ret = make_abacus_scf_kpt(fp_params)
+ print(ret)
\ No newline at end of file
diff --git a/dpgen/generator/lib/pwscf.py b/dpgen/generator/lib/pwscf.py
index 8df25698d..94a454698 100644
--- a/dpgen/generator/lib/pwscf.py
+++ b/dpgen/generator/lib/pwscf.py
@@ -127,11 +127,14 @@ def _make_pwscf_04_kpoints(sys_data, kspacing):
kpoints = [(np.ceil(2 * np.pi * np.linalg.norm(ii) / kspacing).astype(int))
for ii in rcell]
ret = ""
- ret += "K_POINTS { automatic }\n"
- for ii in range(3) :
- ret += "%d " % kpoints[ii]
- for ii in range(3) :
- ret += "%d " % _kshift(kpoints[ii])
+ if kpoints == [1,1,1]:
+ ret += "K_POINTS gamma"
+ else:
+ ret += "K_POINTS { automatic }\n"
+ for ii in range(3) :
+ ret += "%d " % kpoints[ii]
+ for ii in range(3) :
+ ret += "%d " % _kshift(kpoints[ii])
ret += "\n"
return ret
diff --git a/dpgen/generator/run.py b/dpgen/generator/run.py
index 054692fd7..67cca9e82 100644
--- a/dpgen/generator/run.py
+++ b/dpgen/generator/run.py
@@ -45,7 +45,7 @@
from dpgen.generator.lib.vasp import make_vasp_incar_user_dict
from dpgen.generator.lib.vasp import incar_upper
from dpgen.generator.lib.pwscf import make_pwscf_input
-from dpgen.generator.lib.abacus_pw_scf import make_abacus_pw_scf_stru, make_abacus_pw_scf_input, make_abacus_pw_scf_kpt
+from dpgen.generator.lib.abacus_scf import make_abacus_scf_stru, make_abacus_scf_input, make_abacus_scf_kpt
#from dpgen.generator.lib.pwscf import cvt_1frame
from dpgen.generator.lib.pwmat import make_pwmat_input_dict
from dpgen.generator.lib.pwmat import write_input_dict
@@ -389,9 +389,13 @@ def make_train (iter_index,
if jinput['model']['descriptor']['type'] == 'hybrid':
for desc in jinput['model']['descriptor']['list']:
desc['seed'] = random.randrange(sys.maxsize) % (2**32)
+ elif jinput['model']['descriptor']['type'] == 'loc_frame':
+ pass
else:
jinput['model']['descriptor']['seed'] = random.randrange(sys.maxsize) % (2**32)
jinput['model']['fitting_net']['seed'] = random.randrange(sys.maxsize) % (2**32)
+ if 'type_embedding' in jinput['model']:
+ jinput['model']['type_embedding']['seed'] = random.randrange(sys.maxsize) % (2**32)
jinput['training']['seed'] = random.randrange(sys.maxsize) % (2**32)
else:
raise RuntimeError("DP-GEN currently only supports for DeePMD-kit 1.x or 2.x version!" )
@@ -514,6 +518,8 @@ def run_train (iter_index,
commands.append(command)
command = '%s freeze' % train_command
commands.append(command)
+ if jdata.get("dp_compress", False):
+ commands.append("%s compress" % train_command)
else:
raise RuntimeError("DP-GEN currently only supports for DeePMD-kit 1.x or 2.x version!" )
@@ -536,6 +542,8 @@ def run_train (iter_index,
]
backward_files = ['frozen_model.pb', 'lcurve.out', 'train.log']
backward_files+= ['model.ckpt.meta', 'model.ckpt.index', 'model.ckpt.data-00000-of-00001', 'checkpoint']
+ if jdata.get("dp_compress", False):
+ backward_files.append('frozen_model_compressed.pb')
init_data_sys_ = jdata['init_data_sys']
init_data_sys = []
for ii in init_data_sys_ :
@@ -621,7 +629,11 @@ def post_train (iter_index,
return
# symlink models
for ii in range(numb_models) :
- task_file = os.path.join(train_task_fmt % ii, 'frozen_model.pb')
+ if not jdata.get("dp_compress", False):
+ model_name = 'frozen_model.pb'
+ else:
+ model_name = 'frozen_model_compressed.pb'
+ task_file = os.path.join(train_task_fmt % ii, model_name)
ofile = os.path.join(work_path, 'graph.%03d.pb' % ii)
if os.path.isfile(ofile) :
os.remove(ofile)
@@ -796,7 +808,7 @@ def make_model_devi (iter_index,
iter_name = make_iter_name(iter_index)
train_path = os.path.join(iter_name, train_name)
train_path = os.path.abspath(train_path)
- models = glob.glob(os.path.join(train_path, "graph*pb"))
+ models = sorted(glob.glob(os.path.join(train_path, "graph*pb")))
work_path = os.path.join(iter_name, model_devi_name)
create_path(work_path)
for mm in models :
@@ -882,7 +894,7 @@ def _make_model_devi_revmat(iter_index, jdata, mdata, conf_systems):
iter_name = make_iter_name(iter_index)
train_path = os.path.join(iter_name, train_name)
train_path = os.path.abspath(train_path)
- models = glob.glob(os.path.join(train_path, "graph*pb"))
+ models = sorted(glob.glob(os.path.join(train_path, "graph*pb")))
task_model_list = []
for ii in models:
task_model_list.append(os.path.join('..', os.path.basename(ii)))
@@ -939,7 +951,23 @@ def _make_model_devi_revmat(iter_index, jdata, mdata, conf_systems):
# revise input of lammps
with open('input.lammps') as fp:
lmp_lines = fp.readlines()
- lmp_lines = revise_lmp_input_model(lmp_lines, task_model_list, trj_freq, deepmd_version = deepmd_version)
+ # only revise the line "pair_style deepmd" if the user has not written the full line (checked by then length of the line)
+ template_has_pair_deepmd=1
+ for line_idx,line_context in enumerate(lmp_lines):
+ if (line_context[0] != "#") and ("pair_style" in line_context) and ("deepmd" in line_context):
+ template_has_pair_deepmd=0
+ template_pair_deepmd_idx=line_idx
+ if template_has_pair_deepmd == 0:
+ if LooseVersion(deepmd_version) < LooseVersion('1'):
+ if len(lmp_lines[template_pair_deepmd_idx].split()) != (len(models) + len(["pair_style","deepmd","10", "model_devi.out"])):
+ lmp_lines = revise_lmp_input_model(lmp_lines, task_model_list, trj_freq, deepmd_version = deepmd_version)
+ else:
+ if len(lmp_lines[template_pair_deepmd_idx].split()) != (len(models) + len(["pair_style","deepmd","out_freq", "10", "out_file", "model_devi.out"])):
+ lmp_lines = revise_lmp_input_model(lmp_lines, task_model_list, trj_freq, deepmd_version = deepmd_version)
+ #use revise_lmp_input_model to raise error message if "part_style" or "deepmd" not found
+ else:
+ lmp_lines = revise_lmp_input_model(lmp_lines, task_model_list, trj_freq, deepmd_version = deepmd_version)
+
lmp_lines = revise_lmp_input_dump(lmp_lines, trj_freq)
lmp_lines = revise_by_keys(
lmp_lines, total_rev_keys[:total_num_lmp], total_rev_item[:total_num_lmp]
@@ -1585,18 +1613,32 @@ def _make_fp_vasp_inner (modd_path,
skip_bad_box = jdata.get('fp_skip_bad_box')
# skip discrete structure in cluster
fp_cluster_vacuum = jdata.get('fp_cluster_vacuum',None)
- for ss in system_index :
+
+ def _trust_limitation_check(sys_idx, lim):
+ if isinstance(lim, list):
+ sys_lim = lim[sys_idx]
+ else:
+ sys_lim = lim
+ return sys_lim
+
+ for ss in system_index:
modd_system_glob = os.path.join(modd_path, 'task.' + ss + '.*')
modd_system_task = glob.glob(modd_system_glob)
modd_system_task.sort()
+ # convert global trust limitations to local ones
+ f_trust_lo_sys = _trust_limitation_check(ss, f_trust_lo)
+ f_trust_hi_sys = _trust_limitation_check(ss, f_trust_hi)
+ v_trust_lo_sys = _trust_limitation_check(ss, v_trust_lo)
+ v_trust_hi_sys = _trust_limitation_check(ss, v_trust_hi)
+
# assumed e -> v
if not model_devi_adapt_trust_lo:
fp_rest_accurate, fp_candidate, fp_rest_failed, counter \
= _select_by_model_devi_standard(
modd_system_task,
- f_trust_lo, f_trust_hi,
- v_trust_lo, v_trust_hi,
+ f_trust_lo_sys, f_trust_hi_sys,
+ v_trust_lo_sys, v_trust_hi_sys,
cluster_cutoff,
model_devi_skip,
model_devi_f_avg_relative = model_devi_f_avg_relative,
@@ -1610,8 +1652,8 @@ def _make_fp_vasp_inner (modd_path,
fp_rest_accurate, fp_candidate, fp_rest_failed, counter, f_trust_lo_ad, v_trust_lo_ad \
= _select_by_model_devi_adaptive_trust_low(
modd_system_task,
- f_trust_hi, numb_candi_f, perc_candi_f,
- v_trust_hi, numb_candi_v, perc_candi_v,
+ f_trust_hi_sys, numb_candi_f, perc_candi_f,
+ v_trust_hi_sys, numb_candi_v, perc_candi_v,
model_devi_skip = model_devi_skip,
model_devi_f_avg_relative = model_devi_f_avg_relative,
)
@@ -2063,7 +2105,7 @@ def make_fp_pwscf(iter_index,
# link pp files
_link_fp_vasp_pp(iter_index, jdata)
-def make_fp_abacus_pw_scf(iter_index,
+def make_fp_abacus_scf(iter_index,
jdata) :
# make config
fp_tasks = _make_fp_vasp_configs(iter_index, jdata)
@@ -2084,13 +2126,13 @@ def make_fp_abacus_pw_scf(iter_index,
sys_data = dpdata.System('POSCAR').data
if 'mass_map' in jdata:
sys_data['atom_masses'] = jdata['mass_map']
- ret_input = make_abacus_pw_scf_input(fp_params)
+ ret_input = make_abacus_scf_input(fp_params)
with open('INPUT', 'w') as fp:
fp.write(ret_input)
- ret_kpt = make_abacus_pw_scf_kpt(fp_params)
+ ret_kpt = make_abacus_scf_kpt(fp_params)
with open("KPT", "w") as fp:
fp.write(ret_kpt)
- ret_stru = make_abacus_pw_scf_stru(sys_data, fp_pp_files)
+ ret_stru = make_abacus_scf_stru(sys_data, fp_pp_files, fp_params)
with open("STRU", "w") as fp:
fp.write(ret_stru)
@@ -2224,7 +2266,7 @@ def make_fp (iter_index,
elif fp_style == "pwscf" :
make_fp_pwscf(iter_index, jdata)
elif fp_style == "abacus/scf" :
- make_fp_abacus_pw_scf(iter_index, jdata)
+ make_fp_abacus_scf(iter_index, jdata)
elif fp_style == "siesta" :
make_fp_siesta(iter_index, jdata)
elif fp_style == "gaussian" :
@@ -2262,7 +2304,7 @@ def _qe_check_fin(ii) :
return False
return True
-def _abacus_pw_scf_check_fin(ii) :
+def _abacus_scf_check_fin(ii) :
if os.path.isfile(os.path.join(ii, 'OUT.ABACUS/running_scf.log')) :
with open(os.path.join(ii, 'OUT.ABACUS/running_scf.log'), 'r') as fp :
content = fp.read()
@@ -2407,7 +2449,7 @@ def run_fp (iter_index,
elif fp_style == "abacus/scf":
forward_files = ["INPUT", "STRU", "KPT"] + fp_pp_files
backward_files = ["output", "OUT.ABACUS"]
- run_fp_inner(iter_index, jdata, mdata, forward_files, backward_files, _abacus_pw_scf_check_fin, log_file = 'output')
+ run_fp_inner(iter_index, jdata, mdata, forward_files, backward_files, _abacus_scf_check_fin, log_file = 'output')
elif fp_style == "siesta":
forward_files = ['input'] + fp_pp_files
backward_files = ['output']
@@ -2582,7 +2624,7 @@ def post_fp_pwscf (iter_index,
all_sys.to_deepmd_raw(sys_data_path)
all_sys.to_deepmd_npy(sys_data_path, set_size = len(sys_output))
-def post_fp_abacus_pw_scf (iter_index,
+def post_fp_abacus_scf (iter_index,
jdata):
model_devi_jobs = jdata['model_devi_jobs']
assert (iter_index < len(model_devi_jobs))
@@ -2828,7 +2870,7 @@ def post_fp (iter_index,
elif fp_style == "pwscf" :
post_fp_pwscf(iter_index, jdata)
elif fp_style == "abacus/scf":
- post_fp_abacus_pw_scf(iter_index, jdata)
+ post_fp_abacus_scf(iter_index, jdata)
elif fp_style == "siesta":
post_fp_siesta(iter_index, jdata)
elif fp_style == 'gaussian' :
@@ -2840,15 +2882,24 @@ def post_fp (iter_index,
else :
raise RuntimeError ("unsupported fp style")
# clean traj
- iter_name = make_iter_name(iter_index)
clean_traj = True
if 'model_devi_clean_traj' in jdata :
clean_traj = jdata['model_devi_clean_traj']
- if clean_traj:
- modd_path = os.path.join(iter_name, model_devi_name)
+ modd_path = None
+ if isinstance(clean_traj, bool):
+ iter_name = make_iter_name(iter_index)
+ if clean_traj:
+ modd_path = os.path.join(iter_name, model_devi_name)
+ elif isinstance(clean_traj, int):
+ clean_index = iter_index - clean_traj
+ if clean_index >= 0:
+ modd_path = os.path.join(make_iter_name(clean_index), model_devi_name)
+ if modd_path is not None:
md_trajs = glob.glob(os.path.join(modd_path, 'task*/traj'))
- for ii in md_trajs :
+ for ii in md_trajs:
shutil.rmtree(ii)
+
+
def set_version(mdata):
diff --git a/dpgen/simplify/simplify.py b/dpgen/simplify/simplify.py
index 768d64835..8deb5a918 100644
--- a/dpgen/simplify/simplify.py
+++ b/dpgen/simplify/simplify.py
@@ -22,11 +22,13 @@
from dpgen import dlog
from dpgen import SHORT_CMD
from dpgen.util import sepline
-from dpgen.dispatcher.Dispatcher import Dispatcher, make_dispatcher
+from distutils.version import LooseVersion
+from dpgen.dispatcher.Dispatcher import Dispatcher, _split_tasks, make_dispatcher, make_submission
from dpgen.generator.run import make_train, run_train, post_train, run_fp, post_fp, fp_name, model_devi_name, train_name, train_task_fmt, sys_link_fp_vasp_pp, make_fp_vasp_incar, make_fp_vasp_kp, make_fp_vasp_cp_cvasp, data_system_fmt, model_devi_task_fmt, fp_task_fmt
# TODO: maybe the following functions can be moved to dpgen.util
from dpgen.generator.lib.utils import log_iter, make_iter_name, create_path, record_iter
from dpgen.generator.lib.gaussian import make_gaussian_input
+from dpgen.remote.decide_machine import convert_mdata
picked_data_name = "data.picked"
@@ -244,7 +246,7 @@ def run_model_devi(iter_index, jdata, mdata):
commands = []
detail_file_names = []
for ii, mm in enumerate(task_model_list):
- detail_file_name = "{prefix}.{ii}".format(
+ detail_file_name = "{prefix}-{ii}".format(
prefix=detail_file_name_prefix,
ii=ii,
)
@@ -267,8 +269,12 @@ def run_model_devi(iter_index, jdata, mdata):
forward_files = [rest_data_name]
backward_files = sum([[pf+".e.out", pf+".f.out", pf+".v.out"] for pf in detail_file_names], [])
- dispatcher = make_dispatcher(mdata['model_devi_machine'], mdata['model_devi_resources'], work_path, run_tasks, model_devi_group_size)
- dispatcher.run_jobs(mdata['model_devi_resources'],
+ api_version = mdata.get('api_version', '0.9')
+ if LooseVersion(api_version) < LooseVersion('1.0'):
+ warnings.warn(f"the dpdispatcher will be updated to new version."
+ f"And the interface may be changed. Please check the documents for more details")
+ dispatcher = make_dispatcher(mdata['model_devi_machine'], mdata['model_devi_resources'], work_path, run_tasks, model_devi_group_size)
+ dispatcher.run_jobs(mdata['model_devi_resources'],
commands,
work_path,
run_tasks,
@@ -276,8 +282,23 @@ def run_model_devi(iter_index, jdata, mdata):
model_names,
forward_files,
backward_files,
- outlog='model_devi.log',
- errlog='model_devi.log')
+ outlog = 'model_devi.log',
+ errlog = 'model_devi.log')
+
+ elif LooseVersion(api_version) >= LooseVersion('1.0'):
+ submission = make_submission(
+ mdata['model_devi_machine'],
+ mdata['model_devi_resources'],
+ commands=commands,
+ work_path=work_path,
+ run_tasks=run_tasks,
+ group_size=model_devi_group_size,
+ forward_common_files=model_names,
+ forward_files=forward_files,
+ backward_files=backward_files,
+ outlog = 'model_devi.log',
+ errlog = 'model_devi.log')
+ submission.run_submission()
def post_model_devi(iter_index, jdata, mdata):
@@ -308,13 +329,13 @@ def post_model_devi(iter_index, jdata, mdata):
sys_name = os.path.basename(task).split('.')[1]
all_names.add(sys_name)
# e.out
- details_e = glob.glob(os.path.join(task, "{}.*.e.out".format(detail_file_name_prefix)))
+ details_e = glob.glob(os.path.join(task, "{}-*.e.out".format(detail_file_name_prefix)))
e_all = np.array([np.loadtxt(detail_e, ndmin=2)[:, 1] for detail_e in details_e])
e_std = np.std(e_all, axis=0)
n_frame = e_std.size
# f.out
- details_f = glob.glob(os.path.join(task, "{}.*.f.out".format(detail_file_name_prefix)))
+ details_f = glob.glob(os.path.join(task, "{}-*.f.out".format(detail_file_name_prefix)))
f_all = np.array([np.loadtxt(detail_f, ndmin=2)[:, 3:6].reshape((n_frame, -1, 3)) for detail_f in details_f])
# (n_model, n_frame, n_atom, 3)
f_std = np.std(f_all, axis=0)
diff --git a/examples/CH4-lebesgue/CH4.POSCAR b/examples/CH4-lebesgue/CH4.POSCAR
new file mode 100644
index 000000000..2f9def780
--- /dev/null
+++ b/examples/CH4-lebesgue/CH4.POSCAR
@@ -0,0 +1 @@
+../init/CH4.POSCAR
\ No newline at end of file
diff --git a/examples/CH4-lebesgue/INCAR_methane b/examples/CH4-lebesgue/INCAR_methane
new file mode 100644
index 000000000..b946fb7e5
--- /dev/null
+++ b/examples/CH4-lebesgue/INCAR_methane
@@ -0,0 +1 @@
+../run/dp1.x-lammps-vasp/CH4/INCAR_methane
\ No newline at end of file
diff --git a/examples/CH4-lebesgue/INCAR_methane.md b/examples/CH4-lebesgue/INCAR_methane.md
new file mode 100644
index 000000000..4c48cdd86
--- /dev/null
+++ b/examples/CH4-lebesgue/INCAR_methane.md
@@ -0,0 +1 @@
+../init/INCAR_methane.md
\ No newline at end of file
diff --git a/examples/CH4-lebesgue/INCAR_methane.rlx b/examples/CH4-lebesgue/INCAR_methane.rlx
new file mode 100644
index 000000000..e44202f43
--- /dev/null
+++ b/examples/CH4-lebesgue/INCAR_methane.rlx
@@ -0,0 +1 @@
+../init/INCAR_methane.rlx
\ No newline at end of file
diff --git a/examples/CH4-lebesgue/README.md b/examples/CH4-lebesgue/README.md
new file mode 100644
index 000000000..d550d16f0
--- /dev/null
+++ b/examples/CH4-lebesgue/README.md
@@ -0,0 +1 @@
+../machine/DeePMD-kit-2.x/lebesgue_v2_machine_README.md
\ No newline at end of file
diff --git a/examples/CH4-lebesgue/init.json b/examples/CH4-lebesgue/init.json
new file mode 100644
index 000000000..72cc77ef5
--- /dev/null
+++ b/examples/CH4-lebesgue/init.json
@@ -0,0 +1 @@
+../init/ch4.json
\ No newline at end of file
diff --git a/examples/CH4-lebesgue/lebesgue_v2_machine.json b/examples/CH4-lebesgue/lebesgue_v2_machine.json
new file mode 100644
index 000000000..02f838b49
--- /dev/null
+++ b/examples/CH4-lebesgue/lebesgue_v2_machine.json
@@ -0,0 +1 @@
+../machine/DeePMD-kit-2.x/lebesgue_v2_machine.json
\ No newline at end of file
diff --git a/examples/CH4-lebesgue/param_CH4_deepmd-kit-2.0.1.json b/examples/CH4-lebesgue/param_CH4_deepmd-kit-2.0.1.json
new file mode 100644
index 000000000..1b19d3d66
--- /dev/null
+++ b/examples/CH4-lebesgue/param_CH4_deepmd-kit-2.0.1.json
@@ -0,0 +1 @@
+../run/dp2.x-lammps-vasp/param_CH4_deepmd-kit-2.0.1.json
\ No newline at end of file
diff --git a/examples/init/abacus/CuW.json b/examples/init/abacus/CuW.json
new file mode 100644
index 000000000..bfa0b8dba
--- /dev/null
+++ b/examples/init/abacus/CuW.json
@@ -0,0 +1,37 @@
+{
+ "init_fp_style": "ABACUS",
+ "stages": [1, 2, 3, 4],
+ "cell_type": "fcc",
+ "latt": 3.76,
+ "super_cell": [
+ 1,
+ 1,
+ 1
+ ],
+ "elements": [
+ "Cu", "W"
+ ],
+ "atom_masses": [63.55, 183.8],
+ "potcars": [
+ "Cu_ONCV_PBE-1.0.upf",
+ "W_ONCV_PBE-1.0.upf"
+ ],
+ "relax_incar": "INPUT",
+ "relax_kpt": "KPT",
+ "md_kpt": "KPT",
+ "md_incar": "INPUT.md",
+ "scale": [
+ 0.99
+ ],
+ "skip_relax": true,
+ "pert_numb": 2,
+ "md_nstep": 2,
+ "pert_box": 0.01,
+ "pert_atom": 0.01,
+ "coll_ndata": 12,
+ "type_map": [
+ "Cu",
+ "W"
+ ],
+ "_comment": "that's all"
+}
diff --git a/examples/init/abacus/INPUT b/examples/init/abacus/INPUT
new file mode 100644
index 000000000..e6fce1bcf
--- /dev/null
+++ b/examples/init/abacus/INPUT
@@ -0,0 +1,19 @@
+INPUT_PARAMETERS
+
+calculation relax
+atom_file STRU
+kpoint_file KPT
+pseudo_dir ./
+ntype 2
+symmetry 1
+ecutwfc 90
+
+npool 4
+charge_extrap second-order
+mixing_type pulay
+mixing_beta 0.4
+dr2 1e-6
+nstep 3
+force_thr_ev 0.02
+move_method cg
+out_stru 0
diff --git a/examples/init/abacus/INPUT.md b/examples/init/abacus/INPUT.md
new file mode 100644
index 000000000..f9d59da2b
--- /dev/null
+++ b/examples/init/abacus/INPUT.md
@@ -0,0 +1,19 @@
+INPUT_PARAMETERS
+
+calculation md
+atom_file STRU
+kpoint_file KPT
+pseudo_dir ./
+ntype 2
+symmetry 1
+ecutwfc 90
+
+npool 4
+charge_extrap second-order
+mixing_type pulay
+mixing_beta 0.4
+dr2 1e-6
+nstep 1
+force_thr_ev 0.02
+move_method cg
+out_stru 0
diff --git a/examples/machine/DeePMD-kit-2.x/lebesgue_v2_machine.json b/examples/machine/DeePMD-kit-2.x/lebesgue_v2_machine.json
new file mode 100644
index 000000000..6b9ead467
--- /dev/null
+++ b/examples/machine/DeePMD-kit-2.x/lebesgue_v2_machine.json
@@ -0,0 +1,108 @@
+{
+ "api_version": "1.0",
+ "deepmd_version": "2.0.1",
+ "train" :[
+ {
+ "command": "dp",
+ "machine": {
+ "batch_type": "DpCloudServer",
+ "context_type": "DpCloudServerContext",
+ "local_root" : "./",
+ "remote_profile":{
+ "email": "your lebesgue register email",
+ "password": "your lebesgue password",
+ "program_id": 0,
+ "input_data":{
+ "api_version":2,
+ "job_type": "indicate",
+ "log_file": "00*/train.log",
+ "grouped":true,
+ "job_name": "dpgen_train_job",
+ "disk_size": 100,
+ "scass_type":"c8_m60_1 * NVIDIA P100",
+ "platform": "ali",
+ "image_name":"deepmd-kit:2.0.1",
+ "on_demand":0
+ }
+ }
+ },
+ "resources": {
+ "number_node": 1,
+ "local_root":"./",
+ "cpu_per_node": 4,
+ "gpu_per_node": 1,
+ "queue_name": "GPU",
+ "group_size": 1
+ }
+ }],
+ "model_devi":
+ [{
+ "command": "lmp -i input.lammps -v restart 0",
+ "machine": {
+ "batch_type": "DpCloudServer",
+ "context_type": "DpCloudServerContext",
+ "local_root" : "./",
+ "remote_profile":{
+ "email": "your lebesgue register email",
+ "password": "your lebesgue password",
+ "program_id": 0,
+ "input_data":{
+ "api_version":2,
+ "job_type": "indicate",
+ "log_file": "*/model_devi.log",
+ "grouped":true,
+ "job_name": "dpgen_model_devi_job",
+ "disk_size": 200,
+ "scass_type":"c8_m60_1 * NVIDIA P100",
+ "platform": "ali",
+ "image_name":"deepmd-kit:2.0.1",
+ "on_demand":0
+ }
+ }
+ },
+ "resources": {
+ "number_node": 1,
+ "local_root":"./",
+ "cpu_per_node": 4,
+ "gpu_per_node": 1,
+ "queue_name": "GPU",
+ "group_size": 5
+ }
+ }],
+ "fp":
+ [{
+ "command": "mpirun -n 16 vasp_std",
+ "machine": {
+ "batch_type": "DpCloudServer",
+ "context_type": "DpCloudServerContext",
+ "local_root" : "./",
+ "remote_profile":{
+ "email": "your lebesgue register email",
+ "password": "your lebesgue password",
+ "program_id": 0,
+ "input_data":{
+ "api_version":2,
+ "job_type": "indicate",
+ "log_file": "task*/fp.log",
+ "grouped":true,
+ "job_name": "dpgen_fp_job",
+ "disk_size": 100,
+ "scass_type":"c8_m8_cpu",
+ "platform": "ali",
+ "image_name":"vasp:5.4.4",
+ "on_demand":0
+ }
+ }
+ },
+ "resources": {
+ "number_node": 1,
+ "cpu_per_node": 32,
+ "gpu_per_node": 0,
+ "queue_name": "CPU",
+ "group_size": 5,
+ "local_root":"./",
+ "source_list": ["/opt/intel/oneapi/setvars.sh"]
+ }
+ }
+ ]
+}
diff --git a/examples/machine/DeePMD-kit-2.x/lebesgue_v2_machine_README.md b/examples/machine/DeePMD-kit-2.x/lebesgue_v2_machine_README.md
new file mode 100644
index 000000000..3c81f5d04
--- /dev/null
+++ b/examples/machine/DeePMD-kit-2.x/lebesgue_v2_machine_README.md
@@ -0,0 +1,24 @@
+# Config machine.json file in order to submit task to lebesgue platform.
+
+You can login to lebesgue official website http://lebesgue.dp.tech/ . Then click [Function]-[DPGEN]-[manual]\(On the top left corner of the function panel\) from left navigator bar http://lebesgue.dp.tech/#/jobs/dpgen.
+
+Below is the description of each json fields, please visit official documentation for more information and update.
+
+| field | optional | type | description |
+| --- | --- | --- | --- |
+| email | false | string | your lebesgue login email |
+| password | false | string | your lebesgue login password (note this is not your remote machine login password) |
+| program_id | false | int | your program id(int) you can find it in [Lebesgue Official website]-[Programs]-[Program ID] to view your program id |
+| api_version | true | int| (default 1) the api_version inside input_data is different from the outside one, which is used to decide which api version will be called to lebesgue. lebesgue currently support version 1 and 2, and version 1 will be deprecate in the future. |
+| job_group_id | true | int | config this to specific job_group so submitted jobs can be view as a whole group in the webpage.
+| rerun | true | int | if the submitted job terminate unsuccessfully, does it need to be rerun.
+| job_type | false | string | job type, should be indicate |
+| log_file | true | string | the location of log file, where you can view the log in webpage |
+| job_name | false | string | job group name |
+| on_demand | true | int | default:0, 0:use spot machine 1:use ondemand machine |
+| image_name | true/false | int | image name, necessary when platform is ali or aws, optional when platform is sugon |
+| disk_size | true/false | int | disk size (GB), necessary when platform is ali or aws, optional when platform is sugon |
+| scass_type | false | string | machine configuration, about scass_type, you can find them on [lebesgue official website] - [Finance]-[Price calculator] to select disire machine configuration. invalid when instance_group_id is present |
+| instance_group_id | true | int | group of scass type |
+| platform | false | string | avaliable platform: "aws" "ali" "sugon" |
+| grouped | false | bool | weather group same task in to one job group. |
\ No newline at end of file
diff --git a/examples/run/dp2.x-lammps-vasp/param_CH4_deepmd-kit-2.0.1.json b/examples/run/dp2.x-lammps-vasp/param_CH4_deepmd-kit-2.0.1.json
new file mode 100644
index 000000000..01af1221b
--- /dev/null
+++ b/examples/run/dp2.x-lammps-vasp/param_CH4_deepmd-kit-2.0.1.json
@@ -0,0 +1,136 @@
+{
+ "type_map": [
+ "H",
+ "C"
+ ],
+ "mass_map": [
+ 1,
+ 12
+ ],
+ "init_data_prefix": "./",
+ "init_data_sys": [
+ "CH4.POSCAR.01x01x01/02.md/sys-0004-0001/deepmd"
+ ],
+ "sys_configs_prefix": "./",
+ "sys_configs": [
+ [
+ "CH4.POSCAR.01x01x01/01.scale_pert/sys-0004-0001/scale*/00000*/POSCAR"
+ ],
+ [
+ "CH4.POSCAR.01x01x01/01.scale_pert/sys-0004-0001/scale*/00001*/POSCAR"
+ ]
+ ],
+ "_comment": " that's all ",
+ "numb_models": 4,
+ "default_training_param": {
+ "model": {
+ "type_map": [
+ "H",
+ "C"
+ ],
+ "descriptor": {
+ "type": "se_a",
+ "sel": [
+ 16,
+ 4
+ ],
+ "rcut_smth": 0.5,
+ "rcut": 5.0,
+ "neuron": [
+ 120,
+ 120,
+ 120
+ ],
+ "resnet_dt": true,
+ "axis_neuron": 12,
+ "seed": 1
+ },
+ "fitting_net": {
+ "neuron": [
+ 25,
+ 50,
+ 100
+ ],
+ "resnet_dt": false,
+ "seed": 1
+ }
+ },
+ "learning_rate": {
+ "type": "exp",
+ "start_lr": 0.001,
+ "decay_steps": 100
+ },
+ "loss": {
+ "start_pref_e": 0.02,
+ "limit_pref_e": 2,
+ "start_pref_f": 1000,
+ "limit_pref_f": 1,
+ "start_pref_v": 0.0,
+ "limit_pref_v": 0.0
+ },
+ "training": {
+ "set_prefix": "set",
+ "numb_steps": 2000,
+ "batch_size": 1,
+ "disp_file": "lcurve.out",
+ "disp_freq": 1000,
+ "numb_test": 4,
+ "save_freq": 1000,
+ "save_ckpt": "model.ckpt",
+ "disp_training": true,
+ "time_training": true,
+ "profiling": false,
+ "profiling_file": "timeline.json",
+ "_comment": "that's all"
+ }
+ },
+ "model_devi_dt": 0.002,
+ "model_devi_skip": 0,
+ "model_devi_f_trust_lo": 0.05,
+ "model_devi_f_trust_hi": 0.15,
+ "model_devi_e_trust_lo": 10000000000.0,
+ "model_devi_e_trust_hi": 10000000000.0,
+ "model_devi_clean_traj": true,
+ "model_devi_jobs": [
+ {
+ "sys_idx": [
+ 0
+ ],
+ "temps": [
+ 100
+ ],
+ "press": [
+ 1.0
+ ],
+ "trj_freq": 10,
+ "nsteps": 300,
+ "ensemble": "nvt",
+ "_idx": "00"
+ },
+ {
+ "sys_idx": [
+ 1
+ ],
+ "temps": [
+ 100
+ ],
+ "press": [
+ 1.0
+ ],
+ "trj_freq": 10,
+ "nsteps": 3000,
+ "ensemble": "nvt",
+ "_idx": "01"
+ }
+ ],
+ "fp_style": "vasp",
+ "shuffle_poscar": false,
+ "fp_task_max": 20,
+ "fp_task_min": 5,
+ "fp_pp_path": "./",
+ "fp_pp_files": [
+ "POTCAR_H",
+ "POTCAR_C"
+ ],
+ "fp_incar": "./INCAR_methane"
+}
diff --git a/setup.py b/setup.py
index f86886544..e051389bf 100755
--- a/setup.py
+++ b/setup.py
@@ -17,7 +17,7 @@
with open(path.join('dpgen', '_date.py'), 'w') as fp :
fp.write('date = \'%s\'' % today)
-install_requires=['numpy>=1.14.3', 'dpdata>=0.1.14', 'pymatgen>=2019.1.13', 'ase', 'monty>2.0.0', 'paramiko', 'custodian','GromacsWrapper>=0.8.0', 'dpdispatcher>=0.3.11']
+install_requires=['numpy>=1.14.3', 'dpdata>=0.2.4', 'pymatgen>=2019.1.13', 'ase', 'monty>2.0.0', 'paramiko', 'custodian','GromacsWrapper>=0.8.0', 'dpdispatcher>=0.3.11']
setuptools.setup(
name=NAME,
diff --git a/tests/data/CuW.json b/tests/data/CuW.json
new file mode 100644
index 000000000..4d289710e
--- /dev/null
+++ b/tests/data/CuW.json
@@ -0,0 +1,37 @@
+{
+ "init_fp_style": "ABACUS",
+ "stages": [1, 2, 3, 4],
+ "cell_type": "fcc",
+ "latt": 3.76,
+ "super_cell": [
+ 1,
+ 1,
+ 1
+ ],
+ "elements": [
+ "Cu", "W"
+ ],
+ "atom_masses": [63.55, 183.8],
+ "potcars": [
+ "abacus.in/Cu_ONCV_PBE-1.0.upf",
+ "abacus.in/W_ONCV_PBE-1.0.upf"
+ ],
+ "relax_incar": "abacus.in/INPUT",
+ "relax_kpt": "abacus.in/KPT",
+ "md_kpt": "abacus.in/KPT",
+ "md_incar": "abacus.in/INPUT.md",
+ "scale": [
+ 0.99
+ ],
+ "skip_relax": true,
+ "pert_numb": 2,
+ "md_nstep": 2,
+ "pert_box": 0.01,
+ "pert_atom": 0.01,
+ "coll_ndata": 12,
+ "type_map": [
+ "Cu",
+ "W"
+ ],
+ "_comment": "that's all"
+}
diff --git a/tests/data/abacus.in/Cu_ONCV_PBE-1.0.upf b/tests/data/abacus.in/Cu_ONCV_PBE-1.0.upf
new file mode 100644
index 000000000..206d35302
--- /dev/null
+++ b/tests/data/abacus.in/Cu_ONCV_PBE-1.0.upf
@@ -0,0 +1,1555 @@
+
+
+
+ This pseudopotential file has been produced using the code
+ ONCVPSP (Optimized Norm-Conservinng Vanderbilt PSeudopotential)
+ scalar-relativistic version 2.1.1, 03/26/2014 by D. R. Hamann
+ The code is available through a link at URL www.mat-simresearch.com.
+ Documentation with the package provides a full discription of the
+ input data below.
+
+
+ While it is not required under the terms of the GNU GPL, it is
+ suggested that you cite D. R. Hamann, Phys. Rev. B 88, 085117 (2013)
+ in any publication using these pseudopotentials.
+
+
+ Copyright 2015 The Regents of the University of California
+
+ This work is licensed under the Creative Commons Attribution-ShareAlike
+ 4.0 International License. To view a copy of this license, visit
+ http://creativecommons.org/licenses/by-sa/4.0/ or send a letter to
+ Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
+
+ This pseudopotential is part of the Schlipf-Gygi norm-conserving
+ pseudopotential library. Its construction parameters were tuned to
+ reproduce materials of a training set with very high accuracy and
+ should be suitable as a general purpose pseudopotential to treat a
+ variety of different compounds. For details of the construction and
+ testing of the pseudopotential please refer to:
+
+ [insert reference to paper here]
+
+ We kindly ask that you include this reference in all publications
+ associated to this pseudopotential.
+
+
+
+# ATOM AND REFERENCE CONFIGURATION
+# atsym z nc nv iexc psfile
+ Cu 29.00 3 4 4 upf
+#
+# n l f energy (Ha)
+ 1 0 2.00
+ 2 0 2.00
+ 2 1 6.00
+ 3 0 2.00
+ 3 1 6.00
+ 4 0 2.00
+ 3 2 9.00
+#
+# PSEUDOPOTENTIAL AND OPTIMIZATION
+# lmax
+ 2
+#
+# l, rc, ep, ncon, nbas, qcut
+ 0 1.91598 -4.40982 5 8 6.64634
+ 1 1.87081 -2.84099 5 8 7.69831
+ 2 1.89326 -0.34980 5 8 8.82467
+#
+# LOCAL POTENTIAL
+# lloc, lpopt, rc(5), dvloc0
+ 4 5 1.68037 0.00000
+#
+# VANDERBILT-KLEINMAN-BYLANDER PROJECTORs
+# l, nproj, debl
+ 0 2 4.19623
+ 1 2 2.79795
+ 2 2 0.83231
+#
+# MODEL CORE CHARGE
+# icmod, fcfact
+ 0 0.00000
+#
+# LOG DERIVATIVE ANALYSIS
+# epsh1, epsh2, depsh
+ -5.00 3.00 0.02
+#
+# OUTPUT GRID
+# rlmax, drl
+ 6.00 0.01
+#
+# TEST CONFIGURATIONS
+# ncnf
+ 0
+# nvcnf
+# n l f
+
+
+
+
+
+
+
+
+ 0.0000 0.0100 0.0200 0.0300 0.0400 0.0500 0.0600 0.0700
+ 0.0800 0.0900 0.1000 0.1100 0.1200 0.1300 0.1400 0.1500
+ 0.1600 0.1700 0.1800 0.1900 0.2000 0.2100 0.2200 0.2300
+ 0.2400 0.2500 0.2600 0.2700 0.2800 0.2900 0.3000 0.3100
+ 0.3200 0.3300 0.3400 0.3500 0.3600 0.3700 0.3800 0.3900
+ 0.4000 0.4100 0.4200 0.4300 0.4400 0.4500 0.4600 0.4700
+ 0.4800 0.4900 0.5000 0.5100 0.5200 0.5300 0.5400 0.5500
+ 0.5600 0.5700 0.5800 0.5900 0.6000 0.6100 0.6200 0.6300
+ 0.6400 0.6500 0.6600 0.6700 0.6800 0.6900 0.7000 0.7100
+ 0.7200 0.7300 0.7400 0.7500 0.7600 0.7700 0.7800 0.7900
+ 0.8000 0.8100 0.8200 0.8300 0.8400 0.8500 0.8600 0.8700
+ 0.8800 0.8900 0.9000 0.9100 0.9200 0.9300 0.9400 0.9500
+ 0.9600 0.9700 0.9800 0.9900 1.0000 1.0100 1.0200 1.0300
+ 1.0400 1.0500 1.0600 1.0700 1.0800 1.0900 1.1000 1.1100
+ 1.1200 1.1300 1.1400 1.1500 1.1600 1.1700 1.1800 1.1900
+ 1.2000 1.2100 1.2200 1.2300 1.2400 1.2500 1.2600 1.2700
+ 1.2800 1.2900 1.3000 1.3100 1.3200 1.3300 1.3400 1.3500
+ 1.3600 1.3700 1.3800 1.3900 1.4000 1.4100 1.4200 1.4300
+ 1.4400 1.4500 1.4600 1.4700 1.4800 1.4900 1.5000 1.5100
+ 1.5200 1.5300 1.5400 1.5500 1.5600 1.5700 1.5800 1.5900
+ 1.6000 1.6100 1.6200 1.6300 1.6400 1.6500 1.6600 1.6700
+ 1.6800 1.6900 1.7000 1.7100 1.7200 1.7300 1.7400 1.7500
+ 1.7600 1.7700 1.7800 1.7900 1.8000 1.8100 1.8200 1.8300
+ 1.8400 1.8500 1.8600 1.8700 1.8800 1.8900 1.9000 1.9100
+ 1.9200 1.9300 1.9400 1.9500 1.9600 1.9700 1.9800 1.9900
+ 2.0000 2.0100 2.0200 2.0300 2.0400 2.0500 2.0600 2.0700
+ 2.0800 2.0900 2.1000 2.1100 2.1200 2.1300 2.1400 2.1500
+ 2.1600 2.1700 2.1800 2.1900 2.2000 2.2100 2.2200 2.2300
+ 2.2400 2.2500 2.2600 2.2700 2.2800 2.2900 2.3000 2.3100
+ 2.3200 2.3300 2.3400 2.3500 2.3600 2.3700 2.3800 2.3900
+ 2.4000 2.4100 2.4200 2.4300 2.4400 2.4500 2.4600 2.4700
+ 2.4800 2.4900 2.5000 2.5100 2.5200 2.5300 2.5400 2.5500
+ 2.5600 2.5700 2.5800 2.5900 2.6000 2.6100 2.6200 2.6300
+ 2.6400 2.6500 2.6600 2.6700 2.6800 2.6900 2.7000 2.7100
+ 2.7200 2.7300 2.7400 2.7500 2.7600 2.7700 2.7800 2.7900
+ 2.8000 2.8100 2.8200 2.8300 2.8400 2.8500 2.8600 2.8700
+ 2.8800 2.8900 2.9000 2.9100 2.9200 2.9300 2.9400 2.9500
+ 2.9600 2.9700 2.9800 2.9900 3.0000 3.0100 3.0200 3.0300
+ 3.0400 3.0500 3.0600 3.0700 3.0800 3.0900 3.1000 3.1100
+ 3.1200 3.1300 3.1400 3.1500 3.1600 3.1700 3.1800 3.1900
+ 3.2000 3.2100 3.2200 3.2300 3.2400 3.2500 3.2600 3.2700
+ 3.2800 3.2900 3.3000 3.3100 3.3200 3.3300 3.3400 3.3500
+ 3.3600 3.3700 3.3800 3.3900 3.4000 3.4100 3.4200 3.4300
+ 3.4400 3.4500 3.4600 3.4700 3.4800 3.4900 3.5000 3.5100
+ 3.5200 3.5300 3.5400 3.5500 3.5600 3.5700 3.5800 3.5900
+ 3.6000 3.6100 3.6200 3.6300 3.6400 3.6500 3.6600 3.6700
+ 3.6800 3.6900 3.7000 3.7100 3.7200 3.7300 3.7400 3.7500
+ 3.7600 3.7700 3.7800 3.7900 3.8000 3.8100 3.8200 3.8300
+ 3.8400 3.8500 3.8600 3.8700 3.8800 3.8900 3.9000 3.9100
+ 3.9200 3.9300 3.9400 3.9500 3.9600 3.9700 3.9800 3.9900
+ 4.0000 4.0100 4.0200 4.0300 4.0400 4.0500 4.0600 4.0700
+ 4.0800 4.0900 4.1000 4.1100 4.1200 4.1300 4.1400 4.1500
+ 4.1600 4.1700 4.1800 4.1900 4.2000 4.2100 4.2200 4.2300
+ 4.2400 4.2500 4.2600 4.2700 4.2800 4.2900 4.3000 4.3100
+ 4.3200 4.3300 4.3400 4.3500 4.3600 4.3700 4.3800 4.3900
+ 4.4000 4.4100 4.4200 4.4300 4.4400 4.4500 4.4600 4.4700
+ 4.4800 4.4900 4.5000 4.5100 4.5200 4.5300 4.5400 4.5500
+ 4.5600 4.5700 4.5800 4.5900 4.6000 4.6100 4.6200 4.6300
+ 4.6400 4.6500 4.6600 4.6700 4.6800 4.6900 4.7000 4.7100
+ 4.7200 4.7300 4.7400 4.7500 4.7600 4.7700 4.7800 4.7900
+ 4.8000 4.8100 4.8200 4.8300 4.8400 4.8500 4.8600 4.8700
+ 4.8800 4.8900 4.9000 4.9100 4.9200 4.9300 4.9400 4.9500
+ 4.9600 4.9700 4.9800 4.9900 5.0000 5.0100 5.0200 5.0300
+ 5.0400 5.0500 5.0600 5.0700 5.0800 5.0900 5.1000 5.1100
+ 5.1200 5.1300 5.1400 5.1500 5.1600 5.1700 5.1800 5.1900
+ 5.2000 5.2100 5.2200 5.2300 5.2400 5.2500 5.2600 5.2700
+ 5.2800 5.2900 5.3000 5.3100 5.3200 5.3300 5.3400 5.3500
+ 5.3600 5.3700 5.3800 5.3900 5.4000 5.4100 5.4200 5.4300
+ 5.4400 5.4500 5.4600 5.4700 5.4800 5.4900 5.5000 5.5100
+ 5.5200 5.5300 5.5400 5.5500 5.5600 5.5700 5.5800 5.5900
+ 5.6000 5.6100 5.6200 5.6300 5.6400 5.6500 5.6600 5.6700
+ 5.6800 5.6900 5.7000 5.7100 5.7200 5.7300 5.7400 5.7500
+ 5.7600 5.7700 5.7800 5.7900 5.8000 5.8100 5.8200 5.8300
+ 5.8400 5.8500 5.8600 5.8700 5.8800 5.8900 5.9000 5.9100
+ 5.9200 5.9300 5.9400 5.9500 5.9600 5.9700 5.9800 5.9900
+ 6.0000 6.0100
+
+
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100
+
+
+
+ -5.3426582174E+01 -5.3426294377E+01 -5.3425961808E+01 -5.3424900387E+01
+ -5.3422426035E+01 -5.3417715775E+01 -5.3409905798E+01 -5.3398178823E+01
+ -5.3381828984E+01 -5.3360299731E+01 -5.3333196482E+01 -5.3300279635E+01
+ -5.3261444874E+01 -5.3216697269E+01 -5.3166124132E+01 -5.3109869931E+01
+ -5.3048114979E+01 -5.2981058499E+01 -5.2908905946E+01 -5.2831860037E+01
+ -5.2750114808E+01 -5.2663852007E+01 -5.2573239191E+01 -5.2478429016E+01
+ -5.2379559299E+01 -5.2276753572E+01 -5.2170121864E+01 -5.2059761604E+01
+ -5.1945758514E+01 -5.1828187425E+01 -5.1707112995E+01 -5.1582590299E+01
+ -5.1454665278E+01 -5.1323375078E+01 -5.1188748208E+01 -5.1050804676E+01
+ -5.0909555917E+01 -5.0765004764E+01 -5.0617145278E+01 -5.0465962611E+01
+ -5.0311432906E+01 -5.0153523259E+01 -4.9992191821E+01 -4.9827388083E+01
+ -4.9659053432E+01 -4.9487122005E+01 -4.9311521912E+01 -4.9132176862E+01
+ -4.8949008194E+01 -4.8761937290E+01 -4.8570888428E+01 -4.8375791857E+01
+ -4.8176586907E+01 -4.7973225595E+01 -4.7765675500E+01 -4.7553922680E+01
+ -4.7337974384E+01 -4.7117860252E+01 -4.6893634241E+01 -4.6665374091E+01
+ -4.6433181528E+01 -4.6197180816E+01 -4.5957516490E+01 -4.5714351909E+01
+ -4.5467865503E+01 -4.5218248176E+01 -4.4965700467E+01 -4.4710429177E+01
+ -4.4452644788E+01 -4.4192559010E+01 -4.3930382559E+01 -4.3666323442E+01
+ -4.3400585582E+01 -4.3133367841E+01 -4.2864863139E+01 -4.2595258094E+01
+ -4.2324732834E+01 -4.2053460900E+01 -4.1781609312E+01 -4.1509338706E+01
+ -4.1236803512E+01 -4.0964152154E+01 -4.0691527237E+01 -4.0419065707E+01
+ -4.0146898983E+01 -3.9875153036E+01 -3.9603948438E+01 -3.9333400352E+01
+ -3.9063618490E+01 -3.8794707034E+01 -3.8526764526E+01 -3.8259883728E+01
+ -3.7994151478E+01 -3.7729648530E+01 -3.7466449392E+01 -3.7204622186E+01
+ -3.6944228512E+01 -3.6685323478E+01 -3.6427955409E+01 -3.6172165719E+01
+ -3.5917989265E+01 -3.5665454317E+01 -3.5414582729E+01 -3.5165390256E+01
+ -3.4917886949E+01 -3.4672076784E+01 -3.4427959116E+01 -3.4185528943E+01
+ -3.3944777614E+01 -3.3705693367E+01 -3.3468261919E+01 -3.3232467824E+01
+ -3.2998295027E+01 -3.2765727370E+01 -3.2534749972E+01 -3.2305349732E+01
+ -3.2077515752E+01 -3.1851239765E+01 -3.1626517899E+01 -3.1403349656E+01
+ -3.1181737753E+01 -3.0961690185E+01 -3.0743218799E+01 -3.0526338493E+01
+ -3.0311068330E+01 -3.0097430831E+01 -2.9885450327E+01 -2.9675153688E+01
+ -2.9466569241E+01 -2.9259725665E+01 -2.9054652111E+01 -2.8851376411E+01
+ -2.8649925765E+01 -2.8450324904E+01 -2.8252595277E+01 -2.8056757417E+01
+ -2.7862825340E+01 -2.7670810881E+01 -2.7480722351E+01 -2.7292561316E+01
+ -2.7106328587E+01 -2.6922017939E+01 -2.6739621046E+01 -2.6559126689E+01
+ -2.6380519400E+01 -2.6203783663E+01 -2.6028900850E+01 -2.5855852950E+01
+ -2.5684621173E+01 -2.5515188486E+01 -2.5347537505E+01 -2.5181655156E+01
+ -2.5017527249E+01 -2.4855145494E+01 -2.4694500883E+01 -2.4535589022E+01
+ -2.4378406075E+01 -2.4222950826E+01 -2.4069222892E+01 -2.3917223049E+01
+ -2.3766951774E+01 -2.3618410314E+01 -2.3471597242E+01 -2.3326512578E+01
+ -2.3183150642E+01 -2.3041508540E+01 -2.2901574760E+01 -2.2763341960E+01
+ -2.2626792234E+01 -2.2491912209E+01 -2.2358679411E+01 -2.2227075054E+01
+ -2.2097073916E+01 -2.1968653481E+01 -2.1841786219E+01 -2.1716446366E+01
+ -2.1592604952E+01 -2.1470233702E+01 -2.1349303058E+01 -2.1229783305E+01
+ -2.1111644969E+01 -2.0994858208E+01 -2.0879394077E+01 -2.0765224065E+01
+ -2.0652319984E+01 -2.0540656146E+01 -2.0430205204E+01 -2.0320945362E+01
+ -2.0212851056E+01 -2.0105903641E+01 -2.0000081690E+01 -1.9895367504E+01
+ -1.9791743952E+01 -1.9689193852E+01 -1.9587701430E+01 -1.9487250203E+01
+ -1.9387824476E+01 -1.9289407683E+01 -1.9191985062E+01 -1.9095541619E+01
+ -1.9000062575E+01 -1.8905533890E+01 -1.8811940750E+01 -1.8719270033E+01
+ -1.8627507725E+01 -1.8536640709E+01 -1.8446656081E+01 -1.8357540607E+01
+ -1.8269282320E+01 -1.8181868417E+01 -1.8095287126E+01 -1.8009526658E+01
+ -1.7924575012E+01 -1.7840421318E+01 -1.7757053936E+01 -1.7674462131E+01
+ -1.7592635252E+01 -1.7511562251E+01 -1.7431233301E+01 -1.7351637871E+01
+ -1.7272765997E+01 -1.7194608147E+01 -1.7117154118E+01 -1.7040394932E+01
+ -1.6964321179E+01 -1.6888923435E+01 -1.6814193163E+01 -1.6740121201E+01
+ -1.6666698971E+01 -1.6593918208E+01 -1.6521770059E+01 -1.6450246702E+01
+ -1.6379340077E+01 -1.6309041818E+01 -1.6239344606E+01 -1.6170240587E+01
+ -1.6101722034E+01 -1.6033781901E+01 -1.5966412619E+01 -1.5899607030E+01
+ -1.5833358351E+01 -1.5767659302E+01 -1.5702503229E+01 -1.5637883607E+01
+ -1.5573793448E+01 -1.5510226537E+01 -1.5447176608E+01 -1.5384636964E+01
+ -1.5322601770E+01 -1.5261065020E+01 -1.5200020306E+01 -1.5139462120E+01
+ -1.5079384717E+01 -1.5019781975E+01 -1.4960648661E+01 -1.4901979295E+01
+ -1.4843768039E+01 -1.4786009887E+01 -1.4728699627E+01 -1.4671831701E+01
+ -1.4615401289E+01 -1.4559403444E+01 -1.4503832891E+01 -1.4448684949E+01
+ -1.4393954942E+01 -1.4339637877E+01 -1.4285729174E+01 -1.4232224423E+01
+ -1.4179118919E+01 -1.4126408144E+01 -1.4074087955E+01 -1.4022153934E+01
+ -1.3970601593E+01 -1.3919427052E+01 -1.3868626170E+01 -1.3818194502E+01
+ -1.3768128382E+01 -1.3718423876E+01 -1.3669076816E+01 -1.3620083488E+01
+ -1.3571440235E+01 -1.3523143181E+01 -1.3475188528E+01 -1.3427572892E+01
+ -1.3380292686E+01 -1.3333344032E+01 -1.3286723785E+01 -1.3240428530E+01
+ -1.3194454673E+01 -1.3148798923E+01 -1.3103458150E+01 -1.3058429055E+01
+ -1.3013708180E+01 -1.2969292664E+01 -1.2925179399E+01 -1.2881365091E+01
+ -1.2837846794E+01 -1.2794621652E+01 -1.2751686671E+01 -1.2709038683E+01
+ -1.2666675104E+01 -1.2624593108E+01 -1.2582789721E+01 -1.2541262199E+01
+ -1.2500007979E+01 -1.2459024364E+01 -1.2418308424E+01 -1.2377857787E+01
+ -1.2337669908E+01 -1.2297742151E+01 -1.2258071847E+01 -1.2218656740E+01
+ -1.2179494381E+01 -1.2140582179E+01 -1.2101917765E+01 -1.2063498925E+01
+ -1.2025323320E+01 -1.1987388421E+01 -1.1949692118E+01 -1.1912232238E+01
+ -1.1875006554E+01 -1.1838012604E+01 -1.1801248498E+01 -1.1764712114E+01
+ -1.1728401288E+01 -1.1692313755E+01 -1.1656447687E+01 -1.1620801059E+01
+ -1.1585371784E+01 -1.1550157756E+01 -1.1515157215E+01 -1.1480368230E+01
+ -1.1445788794E+01 -1.1411416933E+01 -1.1377250959E+01 -1.1343289031E+01
+ -1.1309529228E+01 -1.1275969677E+01 -1.1242608768E+01 -1.1209444747E+01
+ -1.1176475785E+01 -1.1143700083E+01 -1.1111116113E+01 -1.1078722203E+01
+ -1.1046516625E+01 -1.1014497623E+01 -1.0982663760E+01 -1.0951013442E+01
+ -1.0919545045E+01 -1.0888256836E+01 -1.0857147470E+01 -1.0826215427E+01
+ -1.0795459188E+01 -1.0764877042E+01 -1.0734467715E+01 -1.0704229769E+01
+ -1.0674161753E+01 -1.0644262073E+01 -1.0614529418E+01 -1.0584962461E+01
+ -1.0555559820E+01 -1.0526320023E+01 -1.0497241701E+01 -1.0468323642E+01
+ -1.0439564528E+01 -1.0410963017E+01 -1.0382517662E+01 -1.0354227368E+01
+ -1.0326090879E+01 -1.0298106940E+01 -1.0270274155E+01 -1.0242591403E+01
+ -1.0215057533E+01 -1.0187671348E+01 -1.0160431591E+01 -1.0133337018E+01
+ -1.0106386610E+01 -1.0079579224E+01 -1.0052913720E+01 -1.0026388809E+01
+ -1.0000003510E+01 -9.9737567629E+00 -9.9476474799E+00 -9.9216745200E+00
+ -9.8958367406E+00 -9.8701332243E+00 -9.8445629333E+00 -9.8191248298E+00
+ -9.7938177571E+00 -9.7686407790E+00 -9.7435929564E+00 -9.7186732998E+00
+ -9.6938808100E+00 -9.6692143576E+00 -9.6446731507E+00 -9.6202562459E+00
+ -9.5959626998E+00 -9.5717915111E+00 -9.5477417054E+00 -9.5238124870E+00
+ -9.5000029564E+00 -9.4763122142E+00 -9.4527392671E+00 -9.4292832693E+00
+ -9.4059434278E+00 -9.3827188848E+00 -9.3596087830E+00 -9.3366121461E+00
+ -9.3137282310E+00 -9.2909562547E+00 -9.2682953998E+00 -9.2457448485E+00
+ -9.2233036499E+00 -9.2009711389E+00 -9.1787465506E+00 -9.1566291057E+00
+ -9.1346180246E+00 -9.1127123885E+00 -9.0909115875E+00 -9.0692148827E+00
+ -9.0476215311E+00 -9.0261307894E+00 -9.0047417774E+00 -8.9834539190E+00
+ -8.9622665090E+00 -8.9411788388E+00 -8.9201901999E+00 -8.8992997563E+00
+ -8.8785069463E+00 -8.8578111049E+00 -8.8372115567E+00 -8.8167076260E+00
+ -8.7962985273E+00 -8.7759836942E+00 -8.7557625085E+00 -8.7356343264E+00
+ -8.7155985036E+00 -8.6956543109E+00 -8.6758011594E+00 -8.6560384837E+00
+ -8.6363656699E+00 -8.6167821039E+00 -8.5972871187E+00 -8.5778800862E+00
+ -8.5585604990E+00 -8.5393277715E+00 -8.5201813185E+00 -8.5011205412E+00
+ -8.4821447573E+00 -8.4632535211E+00 -8.4444462743E+00 -8.4257224590E+00
+ -8.4070815169E+00 -8.3885227982E+00 -8.3700458224E+00 -8.3516500901E+00
+ -8.3333350692E+00 -8.3151002276E+00 -8.2969449946E+00 -8.2788688006E+00
+ -8.2608712216E+00 -8.2429517500E+00 -8.2251098786E+00 -8.2073451001E+00
+ -8.1896568103E+00 -8.1720445961E+00 -8.1545079952E+00 -8.1370465239E+00
+ -8.1196596986E+00 -8.1023470047E+00 -8.0851079098E+00 -8.0679420377E+00
+ -8.0508489272E+00 -8.0338281172E+00 -8.0168791465E+00 -8.0000014816E+00
+ -7.9831947055E+00 -7.9664584200E+00 -7.9497921853E+00 -7.9331955617E+00
+ -7.9166681096E+00 -7.9002092862E+00 -7.8838187676E+00 -7.8674961409E+00
+ -7.8512409868E+00 -7.8350528862E+00 -7.8189313996E+00 -7.8028760441E+00
+ -7.7868865071E+00 -7.7709623891E+00 -7.7551032902E+00 -7.7393088110E+00
+ -7.7235785140E+00 -7.7079119754E+00 -7.6923088822E+00 -7.6767688535E+00
+ -7.6612915080E+00 -7.6458764649E+00 -7.6305232957E+00 -7.6152316183E+00
+ -7.6000011254E+00 -7.5848314538E+00 -7.5697222403E+00 -7.5546731215E+00
+ -7.5396836851E+00 -7.5247535727E+00 -7.5098824899E+00 -7.4950700904E+00
+ -7.4803160278E+00 -7.4656199557E+00 -7.4509814841E+00 -7.4364002621E+00
+ -7.4218760145E+00 -7.4074084111E+00 -7.3929971216E+00 -7.3786418157E+00
+ -7.3643421317E+00 -7.3500977112E+00 -7.3359083038E+00 -7.3217735947E+00
+ -7.3076932690E+00 -7.2936670119E+00 -7.2796944954E+00 -7.2657753396E+00
+ -7.2519093243E+00 -7.2380961493E+00 -7.2243355144E+00 -7.2106271195E+00
+ -7.1969706644E+00 -7.1833657692E+00 -7.1698122141E+00 -7.1563097242E+00
+ -7.1428580133E+00 -7.1294567952E+00 -7.1161057839E+00 -7.1028046445E+00
+ -7.0895531051E+00 -7.0763509340E+00 -7.0631978584E+00 -7.0500936054E+00
+ -7.0370379022E+00 -7.0240304649E+00 -7.0110709574E+00 -6.9981591952E+00
+ -6.9852949182E+00 -6.9724778661E+00 -6.9597077789E+00 -6.9469843965E+00
+ -6.9343074043E+00 -6.9216765728E+00 -6.9090916852E+00 -6.8965524934E+00
+ -6.8840587494E+00 -6.8716102053E+00 -6.8592066073E+00 -6.8468476369E+00
+ -6.8345331343E+00 -6.8222628630E+00 -6.8100365867E+00 -6.7978540688E+00
+ -6.7857150730E+00 -6.7736193283E+00 -6.7615665898E+00 -6.7495566793E+00
+ -6.7375893714E+00 -6.7256644407E+00 -6.7137816615E+00 -6.7019408087E+00
+ -6.6901416016E+00 -6.6783838523E+00 -6.6666673704E+00 -6.6549919411E+00
+ -6.6433573493E+00 -6.6317633802E+00 -6.6202098187E+00 -6.6086963818E+00
+ -6.5972229223E+00 -6.5857892444E+00 -6.5743951430E+00 -6.5630404133E+00
+ -6.5517248504E+00 -6.5404482493E+00 -6.5292103304E+00 -6.5180109724E+00
+ -6.5068499804E+00 -6.4957271588E+00 -6.4846423124E+00 -6.4735952457E+00
+ -6.4625857616E+00 -6.4516135952E+00 -6.4406786315E+00 -6.4297806843E+00
+ -6.4189195673E+00 -6.4080950941E+00 -6.3973070786E+00 -6.3865553345E+00
+ -6.3758396061E+00 -6.3651597825E+00 -6.3545156882E+00 -6.3439071458E+00
+ -6.3333339776E+00 -6.3227960060E+00
+
+
+
+ 0.0000000000E+00 -4.4320927876E-02 -8.8588410938E-02 -1.3274911615E-01
+ -1.7674993362E-01 -2.2053808705E-01 -2.6406124297E-01 -3.0726761823E-01
+ -3.5010608539E-01 -3.9252627561E-01 -4.3447867869E-01 -4.7591473983E-01
+ -5.1678695285E-01 -5.5704894954E-01 -5.9665558478E-01 -6.3556301722E-01
+ -6.7372878533E-01 -7.1111187847E-01 -7.4767280292E-01 -7.8337364267E-01
+ -8.1817811485E-01 -8.5205161971E-01 -8.8496128510E-01 -9.1687600539E-01
+ -9.4776647490E-01 -9.7760521576E-01 -1.0063666005E+00 -1.0340268689E+00
+ -1.0605641403E+00 -1.0859584200E+00 -1.1101916014E+00 -1.1332474630E+00
+ -1.1551116614E+00 -1.1757717190E+00 -1.1952170091E+00 -1.2134387360E+00
+ -1.2304299119E+00 -1.2461853313E+00 -1.2607015415E+00 -1.2739768108E+00
+ -1.2860110944E+00 -1.2968059987E+00 -1.3063647427E+00 -1.3146921193E+00
+ -1.3217944542E+00 -1.3276795645E+00 -1.3323567165E+00 -1.3358365831E+00
+ -1.3381312013E+00 -1.3392539299E+00 -1.3392194036E+00 -1.3380434938E+00
+ -1.3357432696E+00 -1.3323369475E+00 -1.3278438600E+00 -1.3222844131E+00
+ -1.3156800431E+00 -1.3080531887E+00 -1.2994272404E+00 -1.2898265191E+00
+ -1.2792762287E+00 -1.2678024261E+00 -1.2554319965E+00 -1.2421925980E+00
+ -1.2281126521E+00 -1.2132213047E+00 -1.1975483801E+00 -1.1811243670E+00
+ -1.1639803861E+00 -1.1461481432E+00 -1.1276599044E+00 -1.1085484668E+00
+ -1.0888471214E+00 -1.0685896235E+00 -1.0478101425E+00 -1.0265432339E+00
+ -1.0048238019E+00 -9.8268705742E-01 -9.6016847561E-01 -9.3730375240E-01
+ -9.1412875861E-01 -8.9067949243E-01 -8.6699202979E-01 -8.4310247276E-01
+ -8.1904689591E-01 -7.9486129074E-01 -7.7058150804E-01 -7.4624319848E-01
+ -7.2188175142E-01 -6.9753223202E-01 -6.7322931693E-01 -6.4900722869E-01
+ -6.2489966904E-01 -6.0093975144E-01 -5.7715993308E-01 -5.5359194666E-01
+ -5.3026673231E-01 -5.0721439004E-01 -4.8446407889E-01 -4.6204393327E-01
+ -4.3998104705E-01 -4.1830139110E-01 -3.9702975312E-01 -3.7618969441E-01
+ -3.5580352197E-01 -3.3589206138E-01 -3.1647479855E-01 -2.9756977647E-01
+ -2.7919358734E-01 -2.6136132754E-01 -2.4408637894E-01 -2.2738062682E-01
+ -2.1125436885E-01 -1.9571641234E-01 -1.8077364745E-01 -1.6643146841E-01
+ -1.5269369250E-01 -1.3956254539E-01 -1.2703843097E-01 -1.1512029830E-01
+ -1.0380565502E-01 -9.3090261659E-02 -8.2968444921E-02 -7.3433201336E-02
+ -6.4476036003E-02 -5.6087072751E-02 -4.8255273403E-02 -4.0968323269E-02
+ -3.4212745638E-02 -2.7974063930E-02 -2.2236753316E-02 -1.6984446613E-02
+ -1.2199899523E-02 -7.8651659771E-03 -3.9617547871E-03 -4.7035672017E-04
+ 2.6284363159E-03 5.3545796158E-03 7.7284381681E-03 9.7700982862E-03
+ 1.1500339658E-02 1.2939380705E-02 1.4107538944E-02 1.5025278684E-02
+ 1.5711983313E-02 1.6187823970E-02 1.6471379473E-02 1.6581550900E-02
+ 1.6536441158E-02 1.6353164050E-02 1.6049152865E-02 1.5639589289E-02
+ 1.5140754520E-02 1.4566190051E-02 1.3930240656E-02 1.3245215813E-02
+ 1.2523247012E-02 1.1775318288E-02 1.1011340357E-02 1.0240882599E-02
+ 9.4717154313E-03 8.7119250008E-03 7.9672909811E-03 7.2443810286E-03
+ 6.5471853284E-03 5.8807592662E-03 5.2475411315E-03 4.6511284534E-03
+ 4.0926595632E-03 3.5743963581E-03 3.0963525118E-03 2.6595311989E-03
+ 2.2630068135E-03 1.9065955522E-03 1.5886879219E-03 1.3081011248E-03
+ 1.0627576584E-03 8.5070824456E-04 6.6958426956E-04 5.1693322306E-04
+ 3.9022786475E-04 2.8679555640E-04 2.0403804710E-04 1.3934731971E-04
+ 9.0106055122E-05 5.4030662944E-05 2.8520509754E-05 1.1782622393E-05
+ 1.3845380364E-06 -4.0515880770E-06 -6.7912768026E-06 -7.4174191105E-06
+ -5.8376555488E-06 -2.7347129826E-06 9.7394397179E-08 4.5204416673E-07
+ 1.1426720313E-07 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 7.6491424157E-02 1.5244733542E-01 2.2733617371E-01
+ 3.0063425474E-01 3.7182963363E-01 4.4042587995E-01 5.0594573580E-01
+ 5.6793462929E-01 6.2596401695E-01 6.7963453002E-01 7.2857890063E-01
+ 7.7246464622E-01 8.1099649166E-01 8.4391851130E-01 8.7101597428E-01
+ 8.9211688009E-01 9.0709317182E-01 9.1586161934E-01 9.1838436547E-01
+ 9.1466912985E-01 9.0476907170E-01 8.8878231041E-01 8.6685110916E-01
+ 8.3916072731E-01 8.0593795157E-01 7.6744931427E-01 7.2399901641E-01
+ 6.7592657077E-01 6.2360417951E-01 5.6743386919E-01 5.0784440422E-01
+ 4.4528800496E-01 3.8023691658E-01 3.1317973820E-01 2.4461781926E-01
+ 1.7506130806E-01 1.0502542210E-01 3.5026463123E-02 -3.4422093077E-02
+ -1.0281342067E-01 -1.6965118442E-01 -2.3445327238E-01 -2.9675541301E-01
+ -3.5611465012E-01 -4.1211265008E-01 -4.6435881559E-01 -5.1249318067E-01
+ -5.5618904023E-01 -5.9515528120E-01 -6.2913882655E-01 -6.5792613318E-01
+ -6.8134457518E-01 -6.9926430782E-01 -7.1159846375E-01 -7.1830396916E-01
+ -7.1938197365E-01 -7.1487719952E-01 -7.0487815508E-01 -6.8951571439E-01
+ -6.6896245751E-01 -6.4343108829E-01 -6.1317253663E-01 -5.7847435209E-01
+ -5.3965802153E-01 -4.9707664579E-01 -4.5111207741E-01 -4.0217194645E-01
+ -3.5068666122E-01 -2.9710577647E-01 -2.4189459377E-01 -1.8553071508E-01
+ -1.2850032808E-01 -7.1294740432E-02 -1.4406001469E-02 4.1676490403E-02
+ 9.6469554173E-02 1.4949997160E-01 2.0030803971E-01 2.4845100580E-01
+ 2.9350635838E-01 3.3507494896E-01 3.7278392127E-01 4.0628942597E-01
+ 4.3527910106E-01 4.5947429992E-01 4.7863205097E-01 4.9254673516E-01
+ 5.0105146938E-01 5.0401918648E-01 5.0136340452E-01 4.9303868068E-01
+ 4.7904074745E-01 4.5940633173E-01 4.3421266033E-01 4.0357665810E-01
+ 3.6765384871E-01 3.2663662256E-01 2.8075341150E-01 2.3026672662E-01
+ 1.7547013887E-01 1.1668629993E-01 5.4264359313E-02 -1.1422780770E-02
+ -7.9981017131E-02 -1.5099848613E-01 -2.2404900896E-01 -2.9869506891E-01
+ -3.7449060729E-01 -4.5098386641E-01 -5.2772393484E-01 -6.0426104057E-01
+ -6.8015023655E-01 -7.5495120111E-01 -8.2824174222E-01 -8.9961137859E-01
+ -9.6866491956E-01 -1.0350247353E+00 -1.0983433115E+00 -1.1582934516E+00
+ -1.2145679959E+00 -1.2668974851E+00 -1.3150410822E+00 -1.3587817447E+00
+ -1.3979386956E+00 -1.4323693815E+00 -1.4619548962E+00 -1.4866122171E+00
+ -1.5062996357E+00 -1.5209969317E+00 -1.5307211362E+00 -1.5355262842E+00
+ -1.5354849363E+00 -1.5307087348E+00 -1.5213357772E+00 -1.5075207260E+00
+ -1.4894558308E+00 -1.4673459788E+00 -1.4414174658E+00 -1.4119172267E+00
+ -1.3791027608E+00 -1.3432481310E+00 -1.3046344560E+00 -1.2635539285E+00
+ -1.2202987128E+00 -1.1751713141E+00 -1.1284660054E+00 -1.0804809954E+00
+ -1.0315095641E+00 -9.8183238961E-01 -9.3173631713E-01 -8.8147570297E-01
+ -8.3132117410E-01 -7.8150025186E-01 -7.3225183990E-01 -6.8378040890E-01
+ -6.3628545980E-01 -5.8994557696E-01 -5.4491863612E-01 -5.0135504911E-01
+ -4.5937183337E-01 -4.1908983710E-01 -3.8058863486E-01 -3.4395935258E-01
+ -3.0924975009E-01 -2.7652257196E-01 -2.4580112215E-01 -2.1712350809E-01
+ -1.9049503976E-01 -1.6593996246E-01 -1.4343159281E-01 -1.2296965952E-01
+ -1.0448816800E-01 -8.7944791806E-02 -7.3248295748E-02 -6.0319992140E-02
+ -4.9052250608E-02 -3.9339276444E-02 -3.1063884038E-02 -2.4103720176E-02
+ -1.8337146406E-02 -1.3636686013E-02 -9.8795745926E-03 -6.9447586351E-03
+ -4.7102731052E-03 -3.0720074820E-03 -1.9101348211E-03 -1.1439052734E-03
+ -6.6240707282E-04 -4.0392457760E-04 -2.8845080901E-04 -2.5125908717E-04
+ -1.9816440445E-04 -8.6353231825E-05 3.4417325946E-06 1.5974380333E-05
+ 4.0379854376E-06 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 1.4443842916E-03 5.7721008387E-03 1.2966862237E-02
+ 2.3001594653E-02 3.5838545280E-02 5.1429432147E-02 6.9715635692E-02
+ 9.0628431274E-02 1.1408926171E-01 1.4001004870E-01 1.6829354181E-01
+ 1.9883370370E-01 2.3151612983E-01 2.6621850112E-01 3.0281106750E-01
+ 3.4115716048E-01 3.8111373254E-01 4.2253192119E-01 4.6525763531E-01
+ 5.0913216121E-01 5.5399278624E-01 5.9967343688E-01 6.4600532909E-01
+ 6.9281762786E-01 7.3993811343E-01 7.8719385141E-01 8.3441186366E-01
+ 8.8141979750E-01 9.2804659028E-01 9.7412312661E-01 1.0194828852E+00
+ 1.0639625731E+00 1.1074027439E+00 1.1496483983E+00 1.1905495640E+00
+ 1.2299618516E+00 1.2677469862E+00 1.3037733112E+00 1.3379162607E+00
+ 1.3700588028E+00 1.4000918475E+00 1.4279146201E+00 1.4534349977E+00
+ 1.4765698075E+00 1.4972450864E+00 1.5153962994E+00 1.5309685179E+00
+ 1.5439165576E+00 1.5542050786E+00 1.5618086164E+00 1.5667116107E+00
+ 1.5689083911E+00 1.5684030462E+00 1.5652093663E+00 1.5593506715E+00
+ 1.5508595809E+00 1.5397778613E+00 1.5261560451E+00 1.5100532454E+00
+ 1.4915367204E+00 1.4706815322E+00 1.4475702367E+00 1.4222922415E+00
+ 1.3949435743E+00 1.3656263427E+00 1.3344480908E+00 1.3015214663E+00
+ 1.2669636861E+00 1.2308958378E+00 1.1934424055E+00 1.1547307487E+00
+ 1.1148905048E+00 1.0740530704E+00 1.0323508920E+00 9.8991699260E-01
+ 9.4688443383E-01 9.0338574312E-01 8.5955237518E-01 8.1551418779E-01
+ 7.7139893428E-01 7.2733177478E-01 6.8343480849E-01 6.3982662882E-01
+ 5.9662190338E-01 5.5393098038E-01 5.1185952304E-01 4.7050817337E-01
+ 4.2997224661E-01 3.9034145726E-01 3.5169967769E-01 3.1412472989E-01
+ 2.7768821089E-01 2.4245535210E-01 2.0848491248E-01 1.7582910538E-01
+ 1.4453355843E-01 1.1463730944E-01 8.6172798929E-02 5.9165961307E-02
+ 3.3636320444E-02 9.5970941936E-03 -1.2944663835E-02 -3.3987921340E-02
+ -5.3537555206E-02 -7.1603811673E-02 -8.8202348551E-02 -1.0335390895E-01
+ -1.1708415054E-01 -1.2942339134E-01 -1.4040566596E-01 -1.5006911630E-01
+ -1.5845550685E-01 -1.6561044888E-01 -1.7158124630E-01 -1.7641825247E-01
+ -1.8017432210E-01 -1.8290450135E-01 -1.8466408264E-01 -1.8551022186E-01
+ -1.8550195136E-01 -1.8469731836E-01 -1.8315477076E-01 -1.8093385247E-01
+ -1.7809307734E-01 -1.7468938263E-01 -1.7078041651E-01 -1.6642233944E-01
+ -1.6166846004E-01 -1.5657260009E-01 -1.5118603024E-01 -1.4555684252E-01
+ -1.3973357538E-01 -1.3376050480E-01 -1.2767948723E-01 -1.2153271527E-01
+ -1.1535598302E-01 -1.0918499388E-01 -1.0305306947E-01 -9.6988617709E-02
+ -9.1020584397E-02 -8.5172464521E-02 -7.9466491155E-02 -7.3922975679E-02
+ -6.8557562194E-02 -6.3386409754E-02 -5.8420375632E-02 -5.3670090437E-02
+ -4.9143185193E-02 -4.4844976013E-02 -4.0779907941E-02 -3.6948921624E-02
+ -3.3353098163E-02 -2.9990179783E-02 -2.6857796794E-02 -2.3951369116E-02
+ -2.1265660949E-02 -1.8794061027E-02 -1.6529246286E-02 -1.4462894705E-02
+ -1.2586325523E-02 -1.0889869084E-02 -9.3641396043E-03 -7.9985231848E-03
+ -6.7834931301E-03 -5.7079240305E-03 -4.7626217327E-03 -3.9364109472E-03
+ -3.2207767534E-03 -2.6050556140E-03 -2.0812813338E-03 -1.6394176161E-03
+ -1.2719373803E-03 -9.6934609564E-04 -7.2477002299E-04 -5.2953913490E-04
+ -3.7750955492E-04 -2.6112227202E-04 -1.7498290141E-04 -1.1288617658E-04
+ -7.0176978986E-05 -4.2191188835E-05 -2.4991920506E-05 -1.5573359224E-05
+ -1.0706136301E-05 -9.1536580258E-06 -8.6721452020E-06 -8.3198000523E-06
+ -4.9142940849E-06 -1.0758428121E-06 5.1694595255E-07 3.6104835475E-07
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 1.2074580118E-03 4.8226284147E-03 1.0823931974E-02
+ 1.9175508758E-02 2.9827376017E-02 4.2715648610E-02 5.7762821356E-02
+ 7.4878112517E-02 9.3957867436E-02 1.1488602116E-01 1.3753461872E-01
+ 1.6176439142E-01 1.8742538755E-01 2.1435765533E-01 2.4239197619E-01
+ 2.7135064571E-01 3.0104829983E-01 3.3129278342E-01 3.6188605818E-01
+ 3.9262514651E-01 4.2330310806E-01 4.5371004495E-01 4.8363413203E-01
+ 5.1286266777E-01 5.4118314153E-01 5.6838431295E-01 5.9425729812E-01
+ 6.1859665792E-01 6.4120148391E-01 6.6187647594E-01 6.8043300655E-01
+ 6.9669016641E-01 7.1047578549E-01 7.2162742611E-01 7.2999333788E-01
+ 7.3543337509E-01 7.3781986610E-01 7.3703843232E-01 7.3298874955E-01
+ 7.2558524929E-01 7.1475775266E-01 7.0045203343E-01 6.8263030573E-01
+ 6.6127163236E-01 6.3637224996E-01 6.0794580789E-01 5.7602351798E-01
+ 5.4065421584E-01 5.0190433707E-01 4.5985774641E-01 4.1461554808E-01
+ 3.6629580150E-01 3.1503298879E-01 2.6097761845E-01 2.0429558846E-01
+ 1.4516741269E-01 8.3787606727E-02 2.0363581395E-02 -4.4885055688E-02
+ -1.1172773337E-01 -1.7992395608E-01 -2.4922427507E-01 -3.1937197580E-01
+ -3.9010387914E-01 -4.6115180351E-01 -5.3224424594E-01 -6.0310738229E-01
+ -6.7346649346E-01 -7.4304773233E-01 -8.1157938855E-01 -8.7879323841E-01
+ -9.4442603519E-01 -1.0082208118E+00 -1.0699285511E+00 -1.1293093304E+00
+ -1.1861335691E+00 -1.2401833141E+00 -1.2912534115E+00 -1.3391526074E+00
+ -1.3837045690E+00 -1.4247488195E+00 -1.4621415803E+00 -1.4957565162E+00
+ -1.5254853756E+00 -1.5512385251E+00 -1.5729453710E+00 -1.5905546677E+00
+ -1.6040347086E+00 -1.6133733990E+00 -1.6185782105E+00 -1.6196760161E+00
+ -1.6167128090E+00 -1.6097533044E+00 -1.5988804311E+00 -1.5841947132E+00
+ -1.5658135507E+00 -1.5438705402E+00 -1.5185143961E+00 -1.4899077316E+00
+ -1.4582263157E+00 -1.4236578080E+00 -1.3864005539E+00 -1.3466624932E+00
+ -1.3046602484E+00 -1.2606156852E+00 -1.2147566456E+00 -1.1673149503E+00
+ -1.1185254903E+00 -1.0686248309E+00 -1.0178469304E+00 -9.6642528005E-01
+ -9.1459065964E-01 -8.6257192716E-01 -8.1058752857E-01 -7.5885139844E-01
+ -7.0757069711E-01 -6.5694459463E-01 -6.0715803587E-01 -5.5838772522E-01
+ -5.1080180966E-01 -4.6455131247E-01 -4.1977527175E-01 -3.7660256856E-01
+ -3.3514616255E-01 -2.9550289761E-01 -2.5775933713E-01 -2.2198642687E-01
+ -1.8823802798E-01 -1.5655808196E-01 -1.2697456286E-01 -9.9500310973E-02
+ -7.4138655728E-02 -5.0876986453E-02 -2.9691359600E-02 -1.0548246635E-02
+ 6.5996386484E-03 2.1807327871E-02 3.5140093722E-02 4.6670812668E-02
+ 5.6480620027E-02 6.4656278690E-02 7.1289877925E-02 7.6480212490E-02
+ 8.0325273941E-02 8.2931924243E-02 8.4402090027E-02 8.4843123659E-02
+ 8.4361145256E-02 8.3058367549E-02 8.1042677154E-02 7.8407976656E-02
+ 7.5259166172E-02 7.1682340848E-02 6.7771968009E-02 6.3608262469E-02
+ 5.9271633822E-02 5.4834665123E-02 5.0362379966E-02 4.5918060121E-02
+ 4.1550981742E-02 3.7313696680E-02 3.3240173836E-02 2.9371183035E-02
+ 2.5726451798E-02 2.2334385890E-02 1.9201991746E-02 1.6345196689E-02
+ 1.3760241451E-02 1.1450628582E-02 9.4053635863E-03 7.6176921254E-03
+ 6.0724945372E-03 4.7560094759E-03 3.6504920967E-03 2.7373352255E-03
+ 1.9976861117E-03 1.4104112731E-03 9.5673925590E-04 6.1548952833E-04
+ 3.6877213311E-04 1.9779661477E-04 8.6033766816E-05 1.9214500313E-05
+ -1.7513216739E-05 -3.2746954291E-05 -4.0455877978E-05 -3.7349127028E-05
+ -2.2562860719E-05 -5.0520988653E-06 2.2974686306E-06 1.6046112076E-06
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 2.7977498884E-05 2.2361845347E-04 7.5357955000E-04
+ 1.7825082216E-03 3.4720487333E-03 5.9798611128E-03 9.4586571934E-03
+ 1.4055258022E-02 1.9909676867E-02 2.7154232025E-02 3.5912693615E-02
+ 4.6299468467E-02 5.8418827194E-02 7.2364177452E-02 8.8217387297E-02
+ 1.0604816248E-01 1.2591348137E-01 1.4785709105E-01 1.7190906812E-01
+ 1.9808544715E-01 2.2638792016E-01 2.5680360957E-01 2.8930491737E-01
+ 3.2384945263E-01 3.6038003919E-01 3.9882480537E-01 4.3909735648E-01
+ 4.8109703122E-01 5.2470924228E-01 5.6980590098E-01 6.1624592546E-01
+ 6.6387583126E-01 7.1253040236E-01 7.6203344287E-01 8.1219860141E-01
+ 8.6283027300E-01 9.1372456578E-01 9.6467033626E-01 1.0154502833E+00
+ 1.0658420971E+00 1.1156196575E+00 1.1645542760E+00 1.2124159727E+00
+ 1.2589747830E+00 1.3040020856E+00 1.3472719439E+00 1.3885624525E+00
+ 1.4276570820E+00 1.4643460153E+00 1.4984274450E+00 1.5297088666E+00
+ 1.5580083393E+00 1.5831556367E+00 1.6049934342E+00 1.6233783765E+00
+ 1.6381820442E+00 1.6492919644E+00 1.6566123281E+00 1.6600648673E+00
+ 1.6595893878E+00 1.6551443366E+00 1.6467073502E+00 1.6342752767E+00
+ 1.6178646656E+00 1.5975117605E+00 1.5732722178E+00 1.5452211991E+00
+ 1.5134530771E+00 1.4780807503E+00 1.4392352143E+00 1.3970649626E+00
+ 1.3517351490E+00 1.3034267846E+00 1.2523354607E+00 1.1986704074E+00
+ 1.1426533395E+00 1.0845171270E+00 1.0245044330E+00 9.6286628677E-01
+ 8.9986059907E-01 8.3575063259E-01 7.7080343672E-01 7.0528825855E-01
+ 6.3947494126E-01 5.7363232150E-01 5.0802663750E-01 4.4291995942E-01
+ 3.7856865371E-01 3.1522189270E-01 2.5312022047E-01 1.9249418588E-01
+ 1.3356305247E-01 7.6533594936E-02 2.1598990507E-02 -3.1062187233E-02
+ -8.1286865663E-02 -1.2892825680E-01 -1.7385660129E-01 -2.1595958505E-01
+ -2.5514274425E-01 -2.9132976426E-01 -3.2446263023E-01 -3.5450174053E-01
+ -3.8142609207E-01 -4.0523183633E-01 -4.2593297032E-01 -4.4356058508E-01
+ -4.5816265160E-01 -4.6980344273E-01 -4.7856034699E-01 -4.8452558949E-01
+ -4.8780464620E-01 -4.8851724402E-01 -4.8678945303E-01 -4.8275884105E-01
+ -4.7657246226E-01 -4.6838566970E-01 -4.5835487950E-01 -4.4664354103E-01
+ -4.3342201452E-01 -4.1885688302E-01 -4.0311604300E-01 -3.8637098735E-01
+ -3.6878881546E-01 -3.5053033473E-01 -3.3175797056E-01 -3.1262757983E-01
+ -2.9328390674E-01 -2.7387190157E-01 -2.5452584339E-01 -2.3536772345E-01
+ -2.1651862829E-01 -1.9808340239E-01 -1.8015717615E-01 -1.6283269523E-01
+ -1.4618107876E-01 -1.3027029584E-01 -1.1515773304E-01 -1.0088519221E-01
+ -8.7491558003E-02 -7.4999310535E-02 -6.3424812057E-02 -5.2775486793E-02
+ -4.3047562432E-02 -3.4232549378E-02 -2.6311426287E-02 -1.9260489157E-02
+ -1.3048554744E-02 -7.6404158589E-03 -2.9939477252E-03 9.3338584813E-04
+ 4.1922108648E-03 6.8298947449E-03 8.9008371670E-03 1.0456347043E-02
+ 1.1550577030E-02 1.2236762967E-02 1.2565762728E-02 1.2590603489E-02
+ 1.2356557236E-02 1.1914299490E-02 1.1301990894E-02 1.0565949816E-02
+ 9.7364138341E-03 8.8536171633E-03 7.9396896901E-03 7.0274336185E-03
+ 6.1312505588E-03 5.2755294375E-03 4.4681693308E-03 3.7251973766E-03
+ 3.0494051933E-03 2.4492814933E-03 1.9235920313E-03 1.4742063664E-03
+ 1.0970144766E-03 7.8864802754E-04 5.4313565416E-04 3.5367102976E-04
+ 2.1320921817E-04 1.1357177752E-04 4.7197491062E-05 6.6389582906E-06
+ -1.5768670418E-05 -2.4901030492E-05 -2.8093423198E-05 -2.6637919827E-05
+ -2.7211406413E-05 -2.5898434569E-05 -1.7797457739E-05 -6.2115901286E-06
+ 1.1590290994E-06 1.4822584858E-06 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 1.1816934864E-05 9.4424597935E-05 3.1805954206E-04
+ 7.5185104812E-04 1.4632702200E-03 2.5175824512E-03 3.9773045418E-03
+ 5.9016678739E-03 8.3460892083E-03 1.1361650844E-02 1.4994592082E-02
+ 1.9285814138E-02 2.4270400890E-02 2.9977158053E-02 3.6428173600E-02
+ 4.3638402487E-02 5.1615278906E-02 6.0358359519E-02 6.9859001243E-02
+ 8.0100077298E-02 9.1055735353E-02 1.0269120157E-01 1.1496263448E-01
+ 1.2781703239E-01 1.4119219811E-01 1.5501676461E-01 1.6921028469E-01
+ 1.8368338787E-01 1.9833800730E-01 2.1306767877E-01 2.2775791387E-01
+ 2.4228664833E-01 2.5652476588E-01 2.7033670105E-01 2.8358111213E-01
+ 2.9611163613E-01 3.0777770801E-01 3.1842545586E-01 3.2789866001E-01
+ 3.3603977241E-01 3.4269099463E-01 3.4769540604E-01 3.5089813585E-01
+ 3.5214757198E-01 3.5129659819E-01 3.4820385111E-01 3.4273498737E-01
+ 3.3476395170E-01 3.2417423749E-01 3.1086011834E-01 2.9472785671E-01
+ 2.7569688025E-01 2.5370086181E-01 2.2868879172E-01 2.0062594321E-01
+ 1.6949471992E-01 1.3529551195E-01 9.8047268028E-02 5.7788174205E-02
+ 1.4575987983E-02 -3.1511632606E-02 -8.0376845361E-02 -1.3190189243E-01
+ -1.8594893599E-01 -2.4236041728E-01 -3.0095973792E-01 -3.6155157631E-01
+ -4.2392262665E-01 -4.8784278750E-01 -5.5306609372E-01 -6.1933184662E-01
+ -6.8636601886E-01 -7.5388263025E-01 -8.2158566020E-01 -8.8917058829E-01
+ -9.5632617100E-01 -1.0227364106E+00 -1.0880825512E+00 -1.1520451364E+00
+ -1.2143061124E+00 -1.2745509616E+00 -1.3324708483E+00 -1.3877647608E+00
+ -1.4401416310E+00 -1.4893224148E+00 -1.5350421156E+00 -1.5770517333E+00
+ -1.6151201206E+00 -1.6490357319E+00 -1.6786082473E+00 -1.7036700573E+00
+ -1.7240775935E+00 -1.7397124940E+00 -1.7504825908E+00 -1.7563227113E+00
+ -1.7571952857E+00 -1.7530908516E+00 -1.7440282044E+00 -1.7300541387E+00
+ -1.7112434541E+00 -1.6876984566E+00 -1.6595483245E+00 -1.6269484664E+00
+ -1.5900800103E+00 -1.5491460959E+00 -1.5043728137E+00 -1.4560069742E+00
+ -1.4043150401E+00 -1.3495813531E+00 -1.2921020525E+00 -1.2321876538E+00
+ -1.1701596849E+00 -1.1063516201E+00 -1.0410956253E+00 -9.7473061629E-01
+ -9.0759837919E-01 -8.4004108516E-01 -7.7239022341E-01 -7.0497531194E-01
+ -6.3812285746E-01 -5.7214082633E-01 -5.0732605883E-01 -4.4396669835E-01
+ -3.8233100650E-01 -3.2266550516E-01 -2.6520463744E-01 -2.1015996392E-01
+ -1.5771583011E-01 -1.0804206926E-01 -6.1281316859E-02 -1.7549066454E-02
+ 2.3055798886E-02 6.0465300102E-02 9.4634250277E-02 1.2553680301E-01
+ 1.5317743454E-01 1.7757816146E-01 1.9878475463E-01 2.1686306721E-01
+ 2.3189910579E-01 2.4399626760E-01 2.5327372773E-01 2.5986988624E-01
+ 2.6392815659E-01 2.6561539852E-01 2.6509540907E-01 2.6254882347E-01
+ 2.5816020519E-01 2.5211195930E-01 2.4460428388E-01 2.3581365033E-01
+ 2.2594529376E-01 2.1516948511E-01 2.0367935933E-01 1.9164176098E-01
+ 1.7922816009E-01 1.6659675192E-01 1.5389249195E-01 1.4125965506E-01
+ 1.2881393625E-01 1.1668080864E-01 1.0494585286E-01 9.3711659247E-02
+ 8.3034460107E-02 7.2991011695E-02 6.3610286955E-02 5.4941580851E-02
+ 4.6989801049E-02 3.9776407184E-02 3.3287061797E-02 2.7517627443E-02
+ 2.2439432592E-02 1.8026928422E-02 1.4241056549E-02 1.1039489863E-02
+ 8.3765522834E-03 6.1989301322E-03 4.4574685610E-03 3.0945987089E-03
+ 2.0600419799E-03 1.2991428869E-03 7.6216813844E-04 4.0426181415E-04
+ 1.7757388436E-04 5.2737287164E-05 -1.4638658279E-05 -3.6118521690E-05
+ -4.8377371310E-05 -4.6153517951E-05 -3.1372215982E-05 -1.1154896521E-05
+ 2.0051588386E-06 2.5643564130E-06 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ -6.6178420255E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 -1.6496474938E-01
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 -1.2170183476E+01 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 -4.6387232352E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ -1.9256365978E+01 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 -7.0938557228E+00
+
+
+
+
+
+ 0.0000000000E+00 2.3999402136E-03 9.6199458770E-03 2.1720523197E-02
+ 3.8802350557E-02 6.1006021964E-02 8.8511670936E-02 1.2153845843E-01
+ 1.6034390463E-01 2.0522304118E-01 2.5650735772E-01 3.1456351525E-01
+ 3.7979179749E-01 4.5262427175E-01 5.3352263182E-01 6.2297569730E-01
+ 7.2149654658E-01 8.2961926515E-01 9.4789529474E-01 1.0768893747E+00
+ 1.2171750748E+00 1.3693299222E+00 1.5339301367E+00 1.7115449914E+00
+ 1.9027308311E+00 2.1080247797E+00 2.3279381799E+00 2.5629498222E+00
+ 2.8134990183E+00 3.0799785801E+00 3.3627277808E+00 3.6620253727E+00
+ 3.9780827426E+00 4.3110372936E+00 4.6609461006E+00 5.0277800152E+00
+ 5.4114181775E+00 5.8116431455E+00 6.2281366234E+00 6.6604759274E+00
+ 7.1081312218E+00 7.5704636034E+00 8.0467240880E+00 8.5360535414E+00
+ 9.0374835921E+00 9.5499385504E+00 1.0072238346E+01 1.0603102488E+01
+ 1.1141154991E+01 1.1684930206E+01 1.2232880187E+01 1.2783382089E+01
+ 1.3334746414E+01 1.3885227736E+01 1.4433033534E+01 1.4976335318E+01
+ 1.5513280683E+01 1.6042003218E+01 1.6560636888E+01 1.7067325683E+01
+ 1.7560237856E+01 1.8037577517E+01 1.8497594987E+01 1.8938602543E+01
+ 1.9358981700E+01 1.9757195401E+01 2.0131800540E+01 2.0481454585E+01
+ 2.0804924711E+01 2.1101097757E+01 2.1368985985E+01 2.1607732655E+01
+ 2.1816617376E+01 2.1995059697E+01 2.2142622832E+01 2.2259014456E+01
+ 2.2344087165E+01 2.2397838028E+01 2.2420406862E+01 2.2412073453E+01
+ 2.2373253741E+01 2.2304495040E+01 2.2206470350E+01 2.2079971835E+01
+ 2.1925903536E+01 2.1745273416E+01 2.1539184812E+01 2.1308827393E+01
+ 2.1055467715E+01 2.0780439472E+01 2.0485133538E+01 2.0170987896E+01
+ 1.9839477551E+01 1.9492104524E+01 1.9130388009E+01 1.8755854786E+01
+ 1.8370029957E+01 1.7974430269E+01 1.7570551782E+01 1.7159860315E+01
+ 1.6743789439E+01 1.6323731554E+01 1.5901031825E+01 1.5476984013E+01
+ 1.5052827569E+01 1.4629728491E+01 1.4208793262E+01 1.3791060496E+01
+ 1.3377500949E+01 1.2969014386E+01 1.2566417161E+01 1.2170459002E+01
+ 1.1781817642E+01 1.1401104152E+01 1.1028843857E+01 1.0665500857E+01
+ 1.0311473845E+01 9.9670959672E+00 9.6326318754E+00 9.3082921291E+00
+ 8.9942319216E+00 8.6905490802E+00 8.3972948177E+00 8.1144738015E+00
+ 7.8420465150E+00 7.5799378822E+00 7.3280342129E+00 7.0861886042E+00
+ 6.8542326187E+00 6.6319643346E+00 6.4191614774E+00 6.2155913034E+00
+ 6.0209898919E+00 5.8350915134E+00 5.6576226582E+00 5.4882794033E+00
+ 5.3267819950E+00 5.1728281583E+00 5.0261091194E+00 4.8863386245E+00
+ 4.7531999865E+00 4.6264073398E+00 4.5056663256E+00 4.3906774427E+00
+ 4.2811757028E+00 4.1768632491E+00 4.0774898184E+00 3.9827851689E+00
+ 3.8924973679E+00 3.8063914764E+00 3.7242170762E+00 3.6457713275E+00
+ 3.5708154588E+00 3.4991666672E+00 3.4306134658E+00 3.3649812046E+00
+ 3.3020886406E+00 3.2417705616E+00 3.1838735616E+00 3.1282433224E+00
+ 3.0747512488E+00 3.0232551946E+00 2.9736481340E+00 2.9258009985E+00
+ 2.8796251252E+00 2.8350049839E+00 2.7918672426E+00 2.7501099327E+00
+ 2.7096722620E+00 2.6704654654E+00 2.6324387686E+00 2.5955159452E+00
+ 2.5596539978E+00 2.5247883424E+00 2.4908818091E+00 2.4578803960E+00
+ 2.4257511117E+00 2.3944493709E+00 2.3639450202E+00 2.3342016724E+00
+ 2.3051909756E+00 2.2768835257E+00 2.2492520184E+00 2.2222728796E+00
+ 2.1959193416E+00 2.1701726300E+00 2.1450061961E+00 2.1204047936E+00
+ 2.0963431608E+00 2.0728069922E+00 2.0497747379E+00 2.0272305469E+00
+ 2.0051571412E+00 1.9835370186E+00 1.9623570166E+00 1.9415980554E+00
+ 1.9212498339E+00 1.9012947201E+00 1.8817216528E+00 1.8625168245E+00
+ 1.8436669269E+00 1.8251622737E+00 1.8069875034E+00 1.7891352934E+00
+ 1.7715924894E+00 1.7543496801E+00 1.7373977216E+00 1.7207247219E+00
+ 1.7043244485E+00 1.6881855810E+00 1.6723010520E+00 1.6566629825E+00
+ 1.6412616370E+00 1.6260919948E+00 1.6111446750E+00 1.5964137857E+00
+ 1.5818932156E+00 1.5675743667E+00 1.5534535030E+00 1.5395232057E+00
+ 1.5257778970E+00 1.5122133363E+00 1.4988219213E+00 1.4856006014E+00
+ 1.4725440958E+00 1.4596465455E+00 1.4469052053E+00 1.4343144228E+00
+ 1.4218703410E+00 1.4095699261E+00 1.3974075193E+00 1.3853808907E+00
+ 1.3734865768E+00 1.3617196360E+00 1.3500785169E+00 1.3385594639E+00
+ 1.3271587919E+00 1.3158748642E+00 1.3047039758E+00 1.2936434616E+00
+ 1.2826916301E+00 1.2718449002E+00 1.2611014005E+00 1.2504594309E+00
+ 1.2399155886E+00 1.2294685941E+00 1.2191167884E+00 1.2088569844E+00
+ 1.1986883210E+00 1.1886092266E+00 1.1786167540E+00 1.1687103152E+00
+ 1.1588884655E+00 1.1491485131E+00 1.1394900209E+00 1.1299117038E+00
+ 1.1204111360E+00 1.1109879276E+00 1.1016409795E+00 1.0923681401E+00
+ 1.0831689783E+00 1.0740426007E+00 1.0649871386E+00 1.0560020426E+00
+ 1.0470866394E+00 1.0382393524E+00 1.0294594478E+00 1.0207464810E+00
+ 1.0120991765E+00 1.0035165619E+00 9.9499842356E-01 9.8654379380E-01
+ 9.7815142298E-01 9.6982132138E-01 9.6155280579E-01 9.5334440909E-01
+ 9.4519626860E-01 9.3710783122E-01 9.2907794566E-01 9.2110631766E-01
+ 9.1319269015E-01 9.0533624515E-01 8.9753622943E-01 8.8979266576E-01
+ 8.8210506339E-01 8.7447225135E-01 8.6689446146E-01 8.5937129764E-01
+ 8.5190192054E-01 8.4448601180E-01 8.3712349651E-01 8.2981388924E-01
+ 8.2255631486E-01 8.1535098688E-01 8.0819756440E-01 8.0109528371E-01
+ 7.9404396736E-01 7.8704354413E-01 7.8009361484E-01 7.7319338201E-01
+ 7.6634308083E-01 7.5954242874E-01 7.5279080871E-01 7.4608795596E-01
+ 7.3943388652E-01 7.3282831389E-01 7.2627045839E-01 7.1976049897E-01
+ 7.1329824929E-01 7.0688330079E-01 7.0051512323E-01 6.9419388025E-01
+ 6.8791933484E-01 6.8169094672E-01 6.7550851302E-01 6.6937205439E-01
+ 6.6328133084E-01 6.5723570572E-01 6.5123523537E-01 6.4527981897E-01
+ 6.3936921475E-01 6.3350272048E-01 6.2768058579E-01 6.2190261375E-01
+ 6.1616849461E-01 6.1047768775E-01 6.0483037483E-01 5.9922635580E-01
+ 5.9366527604E-01 5.8814671031E-01 5.8267078716E-01 5.7723730552E-01
+ 5.7184588808E-01 5.6649617734E-01 5.6118826806E-01 5.5592195918E-01
+ 5.5069687106E-01 5.4551266907E-01 5.4036943349E-01 5.3526696423E-01
+ 5.3020489841E-01 5.2518288228E-01 5.2020100026E-01 5.1525905410E-01
+ 5.1035671583E-01 5.0549357365E-01 5.0066973331E-01 4.9588499928E-01
+ 4.9113909604E-01 4.8643151796E-01 4.8176240743E-01 4.7713157243E-01
+ 4.7253879070E-01 4.6798347907E-01 4.6346578112E-01 4.5898552512E-01
+ 4.5454249473E-01 4.5013619153E-01 4.4576658072E-01 4.4143357431E-01
+ 4.3713696257E-01 4.3287635085E-01 4.2865149274E-01 4.2446239678E-01
+ 4.2030886041E-01 4.1619061099E-01 4.1210716312E-01 4.0805862999E-01
+ 4.0404481675E-01 4.0006550422E-01 3.9612020185E-01 3.9220887810E-01
+ 3.8833142971E-01 3.8448764708E-01 3.8067719190E-01 3.7689972203E-01
+ 3.7315527811E-01 3.6944366057E-01 3.6576464800E-01 3.6211773237E-01
+ 3.5850293532E-01 3.5492012089E-01 3.5136907925E-01 3.4784948458E-01
+ 3.4436098492E-01 3.4090362005E-01 3.3747719193E-01 3.3408148304E-01
+ 3.3071603764E-01 3.2738078321E-01 3.2407562596E-01 3.2080036148E-01
+ 3.1755474889E-01 3.1433828638E-01 3.1115107844E-01 3.0799293375E-01
+ 3.0486364370E-01 3.0176287414E-01 2.9869032143E-01 2.9564599994E-01
+ 2.9262971520E-01 2.8964125636E-01 2.8668021923E-01 2.8374645875E-01
+ 2.8083991503E-01 2.7796039229E-01 2.7510767926E-01 2.7228132374E-01
+ 2.6948129809E-01 2.6670748670E-01 2.6395969412E-01 2.6123771030E-01
+ 2.5854105525E-01 2.5586977852E-01 2.5322372816E-01 2.5060271054E-01
+ 2.4800651827E-01 2.4543466189E-01 2.4288723005E-01 2.4036405354E-01
+ 2.3786494185E-01 2.3538969154E-01 2.3293782066E-01 2.3050942083E-01
+ 2.2810432403E-01 2.2572234399E-01 2.2336328233E-01 2.2102668082E-01
+ 2.1871259956E-01 2.1642088926E-01 2.1415136891E-01 2.1190384611E-01
+ 2.0967790229E-01 2.0747353284E-01 2.0529062371E-01 2.0312899997E-01
+ 2.0098847603E-01 1.9886868889E-01 1.9676953738E-01 1.9469095790E-01
+ 1.9263278227E-01 1.9059483234E-01 1.8857681646E-01 1.8657850718E-01
+ 1.8459990463E-01 1.8264084790E-01 1.8070116682E-01 1.7878065590E-01
+ 1.7687893566E-01 1.7499608021E-01 1.7313193638E-01 1.7128634236E-01
+ 1.6945912760E-01 1.6764993297E-01 1.6585872102E-01 1.6408541039E-01
+ 1.6232984790E-01 1.6059187226E-01 1.5887123886E-01 1.5716769547E-01
+ 1.5548126698E-01 1.5381180899E-01 1.5215916958E-01 1.5052318925E-01
+ 1.4890351185E-01 1.4730014470E-01 1.4571299418E-01 1.4414191777E-01
+ 1.4258676593E-01 1.4104732219E-01 1.3952332687E-01 1.3801481769E-01
+ 1.3652166150E-01 1.3504371864E-01 1.3358084287E-01 1.3213274126E-01
+ 1.3069933852E-01 1.2928059049E-01 1.2787636726E-01 1.2648653280E-01
+ 1.2511094500E-01 1.2374925654E-01 1.2240153509E-01 1.2106767199E-01
+ 1.1974754122E-01 1.1844101111E-01 1.1714790573E-01 1.1586795901E-01
+ 1.1460122570E-01 1.1334758946E-01 1.1210692875E-01 1.1087911676E-01
+ 1.0966394977E-01 1.0846124385E-01 1.0727102031E-01 1.0609316735E-01
+ 1.0492756835E-01 1.0377410180E-01 1.0263255255E-01 1.0150278562E-01
+ 1.0038480389E-01 9.9278500447E-02 9.8183763925E-02 9.7100478444E-02
+ 9.6028432293E-02 9.4967508473E-02 9.3917705773E-02 9.2878922457E-02
+ 9.1851052651E-02 9.0833986319E-02 8.9827528688E-02 8.8831552345E-02
+ 8.7846065260E-02 8.6870971036E-02 8.5906169457E-02 8.4951556467E-02
+ 8.4006966500E-02 8.3072236102E-02 8.2147394261E-02 8.1232350020E-02
+ 8.0327008904E-02 7.9431272897E-02 7.8545016726E-02 7.7668018324E-02
+ 7.6800337790E-02 7.5941889642E-02 7.5092585159E-02 7.4252332365E-02
+ 7.3421036006E-02 7.2598456468E-02 7.1784632926E-02 7.0979505328E-02
+ 7.0182990668E-02 6.9395002947E-02 6.8615453158E-02 6.7844164956E-02
+ 6.7081066804E-02 6.6326155623E-02 6.5579354036E-02 6.4840581914E-02
+ 6.4109756369E-02 6.3386772698E-02 6.2671434114E-02 6.1963799697E-02
+ 6.1263797563E-02 6.0571353310E-02 5.9886390005E-02 5.9208828172E-02
+ 5.8538494516E-02 5.7875354808E-02 5.7219394787E-02 5.6570545597E-02
+ 5.5928736066E-02 5.5293892695E-02 5.4665930294E-02 5.4044654068E-02
+ 5.3430128362E-02 5.2822289661E-02 5.2221072334E-02 5.1626408623E-02
+ 5.1038228629E-02 5.0456404756E-02 4.9880848518E-02 4.9311577428E-02
+ 4.8748531156E-02 4.8191647429E-02 4.7640862026E-02 4.7096108760E-02
+ 4.6557232321E-02 4.6024221292E-02 4.5497059046E-02 4.4975688530E-02
+ 4.4460050914E-02 4.3950085579E-02 4.3445730110E-02 4.2946814529E-02
+ 4.2453377284E-02 4.1965380062E-02 4.1482769137E-02 4.1005489153E-02
+ 4.0533483123E-02 4.0066692412E-02 3.9604943629E-02 3.9148300787E-02
+ 3.8696715386E-02 3.8250137031E-02 3.7808513838E-02 3.7371792434E-02
+ 3.6939915270E-02 3.6512723217E-02 3.6090276509E-02 3.5672529401E-02
+ 3.5259434800E-02 3.4850944261E-02 3.4447007976E-02 3.4047574768E-02
+ 3.3652492114E-02 3.3261813874E-02 3.2875500714E-02 3.2493508792E-02
+ 3.2115793029E-02 3.1742307110E-02
+
+
diff --git a/tests/data/abacus.in/INPUT b/tests/data/abacus.in/INPUT
new file mode 100644
index 000000000..e6fce1bcf
--- /dev/null
+++ b/tests/data/abacus.in/INPUT
@@ -0,0 +1,19 @@
+INPUT_PARAMETERS
+
+calculation relax
+atom_file STRU
+kpoint_file KPT
+pseudo_dir ./
+ntype 2
+symmetry 1
+ecutwfc 90
+
+npool 4
+charge_extrap second-order
+mixing_type pulay
+mixing_beta 0.4
+dr2 1e-6
+nstep 3
+force_thr_ev 0.02
+move_method cg
+out_stru 0
diff --git a/tests/data/abacus.in/INPUT.md b/tests/data/abacus.in/INPUT.md
new file mode 100644
index 000000000..f9d59da2b
--- /dev/null
+++ b/tests/data/abacus.in/INPUT.md
@@ -0,0 +1,19 @@
+INPUT_PARAMETERS
+
+calculation md
+atom_file STRU
+kpoint_file KPT
+pseudo_dir ./
+ntype 2
+symmetry 1
+ecutwfc 90
+
+npool 4
+charge_extrap second-order
+mixing_type pulay
+mixing_beta 0.4
+dr2 1e-6
+nstep 1
+force_thr_ev 0.02
+move_method cg
+out_stru 0
diff --git a/tests/data/abacus.in/KPT b/tests/data/abacus.in/KPT
new file mode 100644
index 000000000..8f0b0b445
--- /dev/null
+++ b/tests/data/abacus.in/KPT
@@ -0,0 +1,4 @@
+K_POINTS
+0
+Gamma
+10 10 10 0 0 0
diff --git a/tests/data/abacus.in/W_ONCV_PBE-1.0.upf b/tests/data/abacus.in/W_ONCV_PBE-1.0.upf
new file mode 100644
index 000000000..0052acf50
--- /dev/null
+++ b/tests/data/abacus.in/W_ONCV_PBE-1.0.upf
@@ -0,0 +1,1891 @@
+
+
+
+ This pseudopotential file has been produced using the code
+ ONCVPSP (Optimized Norm-Conservinng Vanderbilt PSeudopotential)
+ scalar-relativistic version 2.1.1, 03/26/2014 by D. R. Hamann
+ The code is available through a link at URL www.mat-simresearch.com.
+ Documentation with the package provides a full discription of the
+ input data below.
+
+
+ While it is not required under the terms of the GNU GPL, it is
+ suggested that you cite D. R. Hamann, Phys. Rev. B 88, 085117 (2013)
+ in any publication using these pseudopotentials.
+
+
+ Copyright 2015 The Regents of the University of California
+
+ This work is licensed under the Creative Commons Attribution-ShareAlike
+ 4.0 International License. To view a copy of this license, visit
+ http://creativecommons.org/licenses/by-sa/4.0/ or send a letter to
+ Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
+
+ This pseudopotential is part of the Schlipf-Gygi norm-conserving
+ pseudopotential library. Its construction parameters were tuned to
+ reproduce materials of a training set with very high accuracy and
+ should be suitable as a general purpose pseudopotential to treat a
+ variety of different compounds. For details of the construction and
+ testing of the pseudopotential please refer to:
+
+ [insert reference to paper here]
+
+ We kindly ask that you include this reference in all publications
+ associated to this pseudopotential.
+
+
+
+# ATOM AND REFERENCE CONFIGURATION
+# atsym z nc nv iexc psfile
+ W 74.00 9 5 4 upf
+#
+# n l f energy (Ha)
+ 1 0 2.00
+ 2 0 2.00
+ 2 1 6.00
+ 3 0 2.00
+ 3 1 6.00
+ 3 2 10.00
+ 4 0 2.00
+ 4 1 6.00
+ 4 2 10.00
+ 4 3 14.00
+ 5 0 2.00
+ 5 1 6.00
+ 6 0 2.00
+ 5 2 4.00
+#
+# PSEUDOPOTENTIAL AND OPTIMIZATION
+# lmax
+ 3
+#
+# l, rc, ep, ncon, nbas, qcut
+ 0 2.14508 -2.90589 5 8 7.75777
+ 1 2.19687 -1.58765 5 8 7.39083
+ 2 1.90387 -0.16465 5 8 8.12535
+ 3 3.03164 -1.22033 5 8 7.15988
+#
+# LOCAL POTENTIAL
+# lloc, lpopt, rc(5), dvloc0
+ 4 5 1.64995 0.00000
+#
+# VANDERBILT-KLEINMAN-BYLANDER PROJECTORs
+# l, nproj, debl
+ 0 2 2.69594
+ 1 2 1.53763
+ 2 2 1.03812
+ 3 2 1.31707
+#
+# MODEL CORE CHARGE
+# icmod, fcfact
+ 0 0.00000
+#
+# LOG DERIVATIVE ANALYSIS
+# epsh1, epsh2, depsh
+ -5.00 3.00 0.02
+#
+# OUTPUT GRID
+# rlmax, drl
+ 6.00 0.01
+#
+# TEST CONFIGURATIONS
+# ncnf
+ 0
+# nvcnf
+# n l f
+
+
+
+
+
+
+
+
+ 0.0000 0.0100 0.0200 0.0300 0.0400 0.0500 0.0600 0.0700
+ 0.0800 0.0900 0.1000 0.1100 0.1200 0.1300 0.1400 0.1500
+ 0.1600 0.1700 0.1800 0.1900 0.2000 0.2100 0.2200 0.2300
+ 0.2400 0.2500 0.2600 0.2700 0.2800 0.2900 0.3000 0.3100
+ 0.3200 0.3300 0.3400 0.3500 0.3600 0.3700 0.3800 0.3900
+ 0.4000 0.4100 0.4200 0.4300 0.4400 0.4500 0.4600 0.4700
+ 0.4800 0.4900 0.5000 0.5100 0.5200 0.5300 0.5400 0.5500
+ 0.5600 0.5700 0.5800 0.5900 0.6000 0.6100 0.6200 0.6300
+ 0.6400 0.6500 0.6600 0.6700 0.6800 0.6900 0.7000 0.7100
+ 0.7200 0.7300 0.7400 0.7500 0.7600 0.7700 0.7800 0.7900
+ 0.8000 0.8100 0.8200 0.8300 0.8400 0.8500 0.8600 0.8700
+ 0.8800 0.8900 0.9000 0.9100 0.9200 0.9300 0.9400 0.9500
+ 0.9600 0.9700 0.9800 0.9900 1.0000 1.0100 1.0200 1.0300
+ 1.0400 1.0500 1.0600 1.0700 1.0800 1.0900 1.1000 1.1100
+ 1.1200 1.1300 1.1400 1.1500 1.1600 1.1700 1.1800 1.1900
+ 1.2000 1.2100 1.2200 1.2300 1.2400 1.2500 1.2600 1.2700
+ 1.2800 1.2900 1.3000 1.3100 1.3200 1.3300 1.3400 1.3500
+ 1.3600 1.3700 1.3800 1.3900 1.4000 1.4100 1.4200 1.4300
+ 1.4400 1.4500 1.4600 1.4700 1.4800 1.4900 1.5000 1.5100
+ 1.5200 1.5300 1.5400 1.5500 1.5600 1.5700 1.5800 1.5900
+ 1.6000 1.6100 1.6200 1.6300 1.6400 1.6500 1.6600 1.6700
+ 1.6800 1.6900 1.7000 1.7100 1.7200 1.7300 1.7400 1.7500
+ 1.7600 1.7700 1.7800 1.7900 1.8000 1.8100 1.8200 1.8300
+ 1.8400 1.8500 1.8600 1.8700 1.8800 1.8900 1.9000 1.9100
+ 1.9200 1.9300 1.9400 1.9500 1.9600 1.9700 1.9800 1.9900
+ 2.0000 2.0100 2.0200 2.0300 2.0400 2.0500 2.0600 2.0700
+ 2.0800 2.0900 2.1000 2.1100 2.1200 2.1300 2.1400 2.1500
+ 2.1600 2.1700 2.1800 2.1900 2.2000 2.2100 2.2200 2.2300
+ 2.2400 2.2500 2.2600 2.2700 2.2800 2.2900 2.3000 2.3100
+ 2.3200 2.3300 2.3400 2.3500 2.3600 2.3700 2.3800 2.3900
+ 2.4000 2.4100 2.4200 2.4300 2.4400 2.4500 2.4600 2.4700
+ 2.4800 2.4900 2.5000 2.5100 2.5200 2.5300 2.5400 2.5500
+ 2.5600 2.5700 2.5800 2.5900 2.6000 2.6100 2.6200 2.6300
+ 2.6400 2.6500 2.6600 2.6700 2.6800 2.6900 2.7000 2.7100
+ 2.7200 2.7300 2.7400 2.7500 2.7600 2.7700 2.7800 2.7900
+ 2.8000 2.8100 2.8200 2.8300 2.8400 2.8500 2.8600 2.8700
+ 2.8800 2.8900 2.9000 2.9100 2.9200 2.9300 2.9400 2.9500
+ 2.9600 2.9700 2.9800 2.9900 3.0000 3.0100 3.0200 3.0300
+ 3.0400 3.0500 3.0600 3.0700 3.0800 3.0900 3.1000 3.1100
+ 3.1200 3.1300 3.1400 3.1500 3.1600 3.1700 3.1800 3.1900
+ 3.2000 3.2100 3.2200 3.2300 3.2400 3.2500 3.2600 3.2700
+ 3.2800 3.2900 3.3000 3.3100 3.3200 3.3300 3.3400 3.3500
+ 3.3600 3.3700 3.3800 3.3900 3.4000 3.4100 3.4200 3.4300
+ 3.4400 3.4500 3.4600 3.4700 3.4800 3.4900 3.5000 3.5100
+ 3.5200 3.5300 3.5400 3.5500 3.5600 3.5700 3.5800 3.5900
+ 3.6000 3.6100 3.6200 3.6300 3.6400 3.6500 3.6600 3.6700
+ 3.6800 3.6900 3.7000 3.7100 3.7200 3.7300 3.7400 3.7500
+ 3.7600 3.7700 3.7800 3.7900 3.8000 3.8100 3.8200 3.8300
+ 3.8400 3.8500 3.8600 3.8700 3.8800 3.8900 3.9000 3.9100
+ 3.9200 3.9300 3.9400 3.9500 3.9600 3.9700 3.9800 3.9900
+ 4.0000 4.0100 4.0200 4.0300 4.0400 4.0500 4.0600 4.0700
+ 4.0800 4.0900 4.1000 4.1100 4.1200 4.1300 4.1400 4.1500
+ 4.1600 4.1700 4.1800 4.1900 4.2000 4.2100 4.2200 4.2300
+ 4.2400 4.2500 4.2600 4.2700 4.2800 4.2900 4.3000 4.3100
+ 4.3200 4.3300 4.3400 4.3500 4.3600 4.3700 4.3800 4.3900
+ 4.4000 4.4100 4.4200 4.4300 4.4400 4.4500 4.4600 4.4700
+ 4.4800 4.4900 4.5000 4.5100 4.5200 4.5300 4.5400 4.5500
+ 4.5600 4.5700 4.5800 4.5900 4.6000 4.6100 4.6200 4.6300
+ 4.6400 4.6500 4.6600 4.6700 4.6800 4.6900 4.7000 4.7100
+ 4.7200 4.7300 4.7400 4.7500 4.7600 4.7700 4.7800 4.7900
+ 4.8000 4.8100 4.8200 4.8300 4.8400 4.8500 4.8600 4.8700
+ 4.8800 4.8900 4.9000 4.9100 4.9200 4.9300 4.9400 4.9500
+ 4.9600 4.9700 4.9800 4.9900 5.0000 5.0100 5.0200 5.0300
+ 5.0400 5.0500 5.0600 5.0700 5.0800 5.0900 5.1000 5.1100
+ 5.1200 5.1300 5.1400 5.1500 5.1600 5.1700 5.1800 5.1900
+ 5.2000 5.2100 5.2200 5.2300 5.2400 5.2500 5.2600 5.2700
+ 5.2800 5.2900 5.3000 5.3100 5.3200 5.3300 5.3400 5.3500
+ 5.3600 5.3700 5.3800 5.3900 5.4000 5.4100 5.4200 5.4300
+ 5.4400 5.4500 5.4600 5.4700 5.4800 5.4900 5.5000 5.5100
+ 5.5200 5.5300 5.5400 5.5500 5.5600 5.5700 5.5800 5.5900
+ 5.6000 5.6100 5.6200 5.6300 5.6400 5.6500 5.6600 5.6700
+ 5.6800 5.6900 5.7000 5.7100 5.7200 5.7300 5.7400 5.7500
+ 5.7600 5.7700 5.7800 5.7900 5.8000 5.8100 5.8200 5.8300
+ 5.8400 5.8500 5.8600 5.8700 5.8800 5.8900 5.9000 5.9100
+ 5.9200 5.9300 5.9400 5.9500 5.9600 5.9700 5.9800 5.9900
+ 6.0000 6.0100
+
+
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100 0.0100
+ 0.0100 0.0100
+
+
+
+ -6.1495141100E+01 -6.1507113206E+01 -6.1546937436E+01 -6.1603956613E+01
+ -6.1667513557E+01 -6.1727554180E+01 -6.1776565583E+01 -6.1810180063E+01
+ -6.1826802530E+01 -6.1826807891E+01 -6.1811718714E+01 -6.1783560457E+01
+ -6.1744436105E+01 -6.1696286443E+01 -6.1640781297E+01 -6.1579291887E+01
+ -6.1512907665E+01 -6.1442473404E+01 -6.1368632346E+01 -6.1291867557E+01
+ -6.1212537976E+01 -6.1130908019E+01 -6.1047170883E+01 -6.0961466353E+01
+ -6.0873894052E+01 -6.0784523167E+01 -6.0693399492E+01 -6.0600550502E+01
+ -6.0505989035E+01 -6.0409716041E+01 -6.0311722656E+01 -6.0211991876E+01
+ -6.0110499941E+01 -6.0007217552E+01 -5.9902110987E+01 -5.9795143088E+01
+ -5.9686274238E+01 -5.9575463214E+01 -5.9462668021E+01 -5.9347846632E+01
+ -5.9230957662E+01 -5.9111960974E+01 -5.8990818197E+01 -5.8867493184E+01
+ -5.8741952382E+01 -5.8614165145E+01 -5.8484103973E+01 -5.8351744697E+01
+ -5.8217066620E+01 -5.8080052579E+01 -5.7940688982E+01 -5.7798965801E+01
+ -5.7654876578E+01 -5.7508418282E+01 -5.7359591275E+01 -5.7208399190E+01
+ -5.7054848745E+01 -5.6898949687E+01 -5.6740714510E+01 -5.6580158402E+01
+ -5.6417298957E+01 -5.6252156043E+01 -5.6084751608E+01 -5.5915109416E+01
+ -5.5743254939E+01 -5.5569215085E+01 -5.5393017992E+01 -5.5214692866E+01
+ -5.5034269750E+01 -5.4851779315E+01 -5.4667252666E+01 -5.4480721149E+01
+ -5.4292216147E+01 -5.4101768879E+01 -5.3909410219E+01 -5.3715170501E+01
+ -5.3519079342E+01 -5.3321165468E+01 -5.3121456517E+01 -5.2919978909E+01
+ -5.2716757688E+01 -5.2511816396E+01 -5.2305176953E+01 -5.2096859579E+01
+ -5.1886882730E+01 -5.1675263077E+01 -5.1462015522E+01 -5.1247153263E+01
+ -5.1030687903E+01 -5.0812629624E+01 -5.0592987415E+01 -5.0371769365E+01
+ -5.0148983018E+01 -4.9924635777E+01 -4.9698735386E+01 -4.9471290483E+01
+ -4.9242311160E+01 -4.9011809573E+01 -4.8779800569E+01 -4.8546302306E+01
+ -4.8311336862E+01 -4.8074930520E+01 -4.7837115041E+01 -4.7597927578E+01
+ -4.7357411096E+01 -4.7115614659E+01 -4.6872593321E+01 -4.6628408655E+01
+ -4.6383128923E+01 -4.6136828110E+01 -4.5889585896E+01 -4.5641486792E+01
+ -4.5392621364E+01 -4.5143083919E+01 -4.4892972377E+01 -4.4642387489E+01
+ -4.4391433223E+01 -4.4140214802E+01 -4.3888838568E+01 -4.3637411628E+01
+ -4.3386040908E+01 -4.3134832699E+01 -4.2883892791E+01 -4.2633324854E+01
+ -4.2383230963E+01 -4.2133711822E+01 -4.1884864848E+01 -4.1636785110E+01
+ -4.1389566022E+01 -4.1143296829E+01 -4.0898064233E+01 -4.0653953345E+01
+ -4.0411044141E+01 -4.0169414751E+01 -3.9929140979E+01 -3.9690293584E+01
+ -3.9452942149E+01 -3.9217152355E+01 -3.8982985982E+01 -3.8750504114E+01
+ -3.8519761482E+01 -3.8290811765E+01 -3.8063705055E+01 -3.7838486407E+01
+ -3.7615201025E+01 -3.7393885980E+01 -3.7174578436E+01 -3.6957309899E+01
+ -3.6742107861E+01 -3.6528998050E+01 -3.6317997678E+01 -3.6109125947E+01
+ -3.5902390357E+01 -3.5697800349E+01 -3.5495355823E+01 -3.5295054914E+01
+ -3.5096889640E+01 -3.4900846365E+01 -3.4706908898E+01 -3.4515051784E+01
+ -3.4325250338E+01 -3.4137467742E+01 -3.3951670686E+01 -3.3767812015E+01
+ -3.3585849812E+01 -3.3405728523E+01 -3.3227397209E+01 -3.3050797652E+01
+ -3.2875873262E+01 -3.2702568249E+01 -3.2530825327E+01 -3.2360592737E+01
+ -3.2191814648E+01 -3.2024445512E+01 -3.1858433426E+01 -3.1693740450E+01
+ -3.1530321273E+01 -3.1368146258E+01 -3.1207179218E+01 -3.1047398672E+01
+ -3.0888779585E+01 -3.0731307861E+01 -3.0574970689E+01 -3.0419760342E+01
+ -3.0265675963E+01 -3.0112715356E+01 -2.9960887781E+01 -2.9810196239E+01
+ -2.9660656322E+01 -2.9512277652E+01 -2.9365076943E+01 -2.9219069698E+01
+ -2.9074271702E+01 -2.8930699823E+01 -2.8788369791E+01 -2.8647293338E+01
+ -2.8507487938E+01 -2.8368956076E+01 -2.8231710065E+01 -2.8095748025E+01
+ -2.7961068211E+01 -2.7827668393E+01 -2.7695527740E+01 -2.7564641637E+01
+ -2.7434976846E+01 -2.7306511070E+01 -2.7179213331E+01 -2.7053042044E+01
+ -2.6927965309E+01 -2.6803935085E+01 -2.6680908419E+01 -2.6558842469E+01
+ -2.6437694208E+01 -2.6317415303E+01 -2.6197975744E+01 -2.6079333343E+01
+ -2.5961457756E+01 -2.5844331342E+01 -2.5727917408E+01 -2.5612216148E+01
+ -2.5497214385E+01 -2.5382901269E+01 -2.5269289037E+01 -2.5156374036E+01
+ -2.5044168286E+01 -2.4932686695E+01 -2.4821937233E+01 -2.4711938985E+01
+ -2.4602707604E+01 -2.4494258529E+01 -2.4386605606E+01 -2.4279766042E+01
+ -2.4173751464E+01 -2.4068570493E+01 -2.3964238786E+01 -2.3860759028E+01
+ -2.3758135463E+01 -2.3656379318E+01 -2.3555484864E+01 -2.3455453366E+01
+ -2.3356287621E+01 -2.3257979045E+01 -2.3160524843E+01 -2.3063921335E+01
+ -2.2968158337E+01 -2.2873229656E+01 -2.2779127563E+01 -2.2685841127E+01
+ -2.2593361688E+01 -2.2501679473E+01 -2.2410783391E+01 -2.2320663292E+01
+ -2.2231308672E+01 -2.2142708704E+01 -2.2054852600E+01 -2.1967729832E+01
+ -2.1881330121E+01 -2.1795642699E+01 -2.1710657304E+01 -2.1626364376E+01
+ -2.1542753602E+01 -2.1459815053E+01 -2.1377539962E+01 -2.1295918708E+01
+ -2.1214941675E+01 -2.1134600874E+01 -2.1054887481E+01 -2.0975792144E+01
+ -2.0897307595E+01 -2.0819425739E+01 -2.0742137661E+01 -2.0665436523E+01
+ -2.0589314861E+01 -2.0513764545E+01 -2.0438778711E+01 -2.0364350594E+01
+ -2.0290472816E+01 -2.0217138428E+01 -2.0144341317E+01 -2.0072074815E+01
+ -2.0000331857E+01 -1.9929106928E+01 -1.9858393878E+01 -1.9788186008E+01
+ -1.9718477851E+01 -1.9649263818E+01 -1.9580537877E+01 -1.9512294263E+01
+ -1.9444528019E+01 -1.9377233760E+01 -1.9310405482E+01 -1.9244038729E+01
+ -1.9178128498E+01 -1.9112669432E+01 -1.9047656650E+01 -1.8983085785E+01
+ -1.8918952137E+01 -1.8855250424E+01 -1.8791976815E+01 -1.8729126928E+01
+ -1.8666696120E+01 -1.8604680038E+01 -1.8543074893E+01 -1.8481876571E+01
+ -1.8421080555E+01 -1.8360683238E+01 -1.8300680815E+01 -1.8241069321E+01
+ -1.8181844672E+01 -1.8123003480E+01 -1.8064542043E+01 -1.8006456462E+01
+ -1.7948743135E+01 -1.7891398713E+01 -1.7834419663E+01 -1.7777802159E+01
+ -1.7721543012E+01 -1.7665638936E+01 -1.7610086558E+01 -1.7554882179E+01
+ -1.7500022932E+01 -1.7445505608E+01 -1.7391326922E+01 -1.7337483490E+01
+ -1.7283972531E+01 -1.7230790985E+01 -1.7177935671E+01 -1.7125403469E+01
+ -1.7073191691E+01 -1.7021297419E+01 -1.6969717586E+01 -1.6918449290E+01
+ -1.6867489941E+01 -1.6816836760E+01 -1.6766486803E+01 -1.6716437337E+01
+ -1.6666685884E+01 -1.6617229794E+01 -1.6568066256E+01 -1.6519192662E+01
+ -1.6470606657E+01 -1.6422305712E+01 -1.6374287160E+01 -1.6326548479E+01
+ -1.6279087439E+01 -1.6231901631E+01 -1.6184988541E+01 -1.6138345690E+01
+ -1.6091970987E+01 -1.6045862135E+01 -1.6000016779E+01 -1.5954432452E+01
+ -1.5909107207E+01 -1.5864038852E+01 -1.5819225197E+01 -1.5774663768E+01
+ -1.5730352750E+01 -1.5686290061E+01 -1.5642473611E+01 -1.5598901100E+01
+ -1.5555570641E+01 -1.5512480324E+01 -1.5469628154E+01 -1.5427012017E+01
+ -1.5384629925E+01 -1.5342480138E+01 -1.5300560758E+01 -1.5258869864E+01
+ -1.5217405338E+01 -1.5176165619E+01 -1.5135148895E+01 -1.5094353356E+01
+ -1.5053777008E+01 -1.5013418194E+01 -1.4973275276E+01 -1.4933346527E+01
+ -1.4893630160E+01 -1.4854124326E+01 -1.4814827581E+01 -1.4775738280E+01
+ -1.4736854776E+01 -1.4698175241E+01 -1.4659698193E+01 -1.4621422137E+01
+ -1.4583345504E+01 -1.4545466686E+01 -1.4507783954E+01 -1.4470296023E+01
+ -1.4433001395E+01 -1.4395898577E+01 -1.4358985938E+01 -1.4322262038E+01
+ -1.4285725565E+01 -1.4249375093E+01 -1.4213209197E+01 -1.4177226246E+01
+ -1.4141425041E+01 -1.4105804255E+01 -1.4070362530E+01 -1.4035098474E+01
+ -1.4000010567E+01 -1.3965097711E+01 -1.3930358612E+01 -1.3895791973E+01
+ -1.3861396417E+01 -1.3827170599E+01 -1.3793113433E+01 -1.3759223682E+01
+ -1.3725500111E+01 -1.3691941371E+01 -1.3658546254E+01 -1.3625313696E+01
+ -1.3592242517E+01 -1.3559331540E+01 -1.3526579455E+01 -1.3493985158E+01
+ -1.3461547614E+01 -1.3429265701E+01 -1.3397138295E+01 -1.3365164136E+01
+ -1.3333342191E+01 -1.3301671469E+01 -1.3270150897E+01 -1.3238779405E+01
+ -1.3207555793E+01 -1.3176479068E+01 -1.3145548290E+01 -1.3114762437E+01
+ -1.3084120489E+01 -1.3053621314E+01 -1.3023263932E+01 -1.2993047463E+01
+ -1.2962970935E+01 -1.2933033373E+01 -1.2903233724E+01 -1.2873570992E+01
+ -1.2844044368E+01 -1.2814652925E+01 -1.2785395734E+01 -1.2756271830E+01
+ -1.2727280173E+01 -1.2698420036E+01 -1.2669690532E+01 -1.2641090776E+01
+ -1.2612619885E+01 -1.2584276799E+01 -1.2556060831E+01 -1.2527971151E+01
+ -1.2500006915E+01 -1.2472167280E+01 -1.2444451290E+01 -1.2416858161E+01
+ -1.2389387164E+01 -1.2362037495E+01 -1.2334808348E+01 -1.2307698882E+01
+ -1.2280708195E+01 -1.2253835662E+01 -1.2227080516E+01 -1.2200441992E+01
+ -1.2173919320E+01 -1.2147511604E+01 -1.2121218189E+01 -1.2095038389E+01
+ -1.2068971472E+01 -1.2043016708E+01 -1.2017173326E+01 -1.1991440508E+01
+ -1.1965817690E+01 -1.1940304176E+01 -1.1914899267E+01 -1.1889602268E+01
+ -1.1864412373E+01 -1.1839328950E+01 -1.1814351398E+01 -1.1789479052E+01
+ -1.1764711246E+01 -1.1740047317E+01 -1.1715486440E+01 -1.1691028137E+01
+ -1.1666671777E+01 -1.1642416727E+01 -1.1618262353E+01 -1.1594207979E+01
+ -1.1570252902E+01 -1.1546396636E+01 -1.1522638578E+01 -1.1498978123E+01
+ -1.1475414668E+01 -1.1451947534E+01 -1.1428576119E+01 -1.1405299931E+01
+ -1.1382118394E+01 -1.1359030934E+01 -1.1336036972E+01 -1.1313135842E+01
+ -1.1290327013E+01 -1.1267609998E+01 -1.1244984248E+01 -1.1222449214E+01
+ -1.1200004346E+01 -1.1177648996E+01 -1.1155382681E+01 -1.1133204926E+01
+ -1.1111115210E+01 -1.1089113007E+01 -1.1067197796E+01 -1.1045368954E+01
+ -1.1023626022E+01 -1.1001968550E+01 -1.0980396040E+01 -1.0958907990E+01
+ -1.0937503904E+01 -1.0916183197E+01 -1.0894945408E+01 -1.0873790121E+01
+ -1.0852716859E+01 -1.0831725147E+01 -1.0810814510E+01 -1.0789984409E+01
+ -1.0769234360E+01 -1.0748563989E+01 -1.0727972842E+01 -1.0707460466E+01
+ -1.0687026406E+01 -1.0666670179E+01 -1.0646391258E+01 -1.0626189319E+01
+ -1.0606063927E+01 -1.0586014651E+01 -1.0566041058E+01 -1.0546142715E+01
+ -1.0526319068E+01 -1.0506569814E+01 -1.0486894550E+01 -1.0467292865E+01
+ -1.0447764346E+01 -1.0428308580E+01 -1.0408925084E+01 -1.0389613467E+01
+ -1.0370373395E+01 -1.0351204476E+01 -1.0332106316E+01 -1.0313078521E+01
+ -1.0294120687E+01 -1.0275232320E+01 -1.0256413159E+01 -1.0237662829E+01
+ -1.0218980955E+01 -1.0200367162E+01 -1.0181821075E+01 -1.0163342249E+01
+ -1.0144930335E+01 -1.0126585030E+01 -1.0108305976E+01 -1.0090092816E+01
+ -1.0071945192E+01 -1.0053862748E+01 -1.0035845009E+01 -1.0017891745E+01
+ -1.0000002620E+01 -9.9821772941E+00 -9.9644154252E+00 -9.9467166730E+00
+ -9.9290806635E+00 -9.9115070080E+00 -9.8939954669E+00 -9.8765457152E+00
+ -9.8591574281E+00 -9.8418302807E+00 -9.8245639481E+00 -9.8073580456E+00
+ -9.7902122591E+00 -9.7731263353E+00 -9.7560999644E+00 -9.7391328367E+00
+ -9.7222246425E+00 -9.7053750719E+00 -9.6885837396E+00 -9.6718503831E+00
+ -9.6551747448E+00 -9.6385565293E+00 -9.6219954413E+00 -9.6054911855E+00
+ -9.5890434666E+00 -9.5726519076E+00 -9.5563162758E+00 -9.5400363186E+00
+ -9.5238117543E+00 -9.5076423015E+00 -9.4915276785E+00 -9.4754676038E+00
+ -9.4594617173E+00 -9.4435097959E+00 -9.4276116004E+00 -9.4117668624E+00
+ -9.3959753136E+00 -9.3802366854E+00 -9.3645507095E+00 -9.3489170504E+00
+ -9.3333354756E+00 -9.3178057678E+00
+
+
+
+ 0.0000000000E+00 -6.1624524386E-02 -1.2314646990E-01 -1.8446342343E-01
+ -2.4547330347E-01 -3.0607452585E-01 -3.6616616961E-01 -4.2564814278E-01
+ -4.8442134822E-01 -5.4238784936E-01 -5.9945103588E-01 -6.5551578917E-01
+ -7.1048864760E-01 -7.6427797143E-01 -8.1679410709E-01 -8.6794955101E-01
+ -9.1765911235E-01 -9.6584007494E-01 -1.0124123577E+00 -1.0572986734E+00
+ -1.1004246861E+00 -1.1417191653E+00 -1.1811141387E+00 -1.2185450414E+00
+ -1.2539508613E+00 -1.2872742819E+00 -1.3184618194E+00 -1.3474639560E+00
+ -1.3742352679E+00 -1.3987345469E+00 -1.4209249163E+00 -1.4407739393E+00
+ -1.4582537212E+00 -1.4733410029E+00 -1.4860172439E+00 -1.4962687021E+00
+ -1.5040864949E+00 -1.5094666613E+00 -1.5124102032E+00 -1.5129231207E+00
+ -1.5110164363E+00 -1.5067062052E+00 -1.5000135132E+00 -1.4909644626E+00
+ -1.4795901448E+00 -1.4659265992E+00 -1.4500147583E+00 -1.4319003798E+00
+ -1.4116339637E+00 -1.3892706546E+00 -1.3648701324E+00 -1.3384964886E+00
+ -1.3102180806E+00 -1.2801073889E+00 -1.2482408441E+00 -1.2146986430E+00
+ -1.1795645755E+00 -1.1429257826E+00 -1.1048725892E+00 -1.0654982178E+00
+ -1.0248986004E+00 -9.8317209940E-01 -9.4041923251E-01 -8.9674247950E-01
+ -8.5224589031E-01 -8.0703488062E-01 -7.6121596750E-01 -7.1489638340E-01
+ -6.6818382135E-01 -6.2118615596E-01 -5.7401115488E-01 -5.2676609964E-01
+ -4.7955750556E-01 -4.3249085771E-01 -3.8567029002E-01 -3.3919828802E-01
+ -2.9317540282E-01 -2.4769998362E-01 -2.0286780305E-01 -1.5877189687E-01
+ -1.1550226548E-01 -7.3145623324E-02 -3.1785159801E-02 8.4996873884E-03
+ 4.7633445588E-02 8.5544806328E-02 1.2216680948E-01 1.5743701169E-01
+ 1.9129763839E-01 2.2369571877E-01 2.5458320317E-01 2.8391706243E-01
+ 3.1165936875E-01 3.3777730501E-01 3.6224333554E-01 3.8503516960E-01
+ 4.0613572993E-01 4.2553316523E-01 4.4322081733E-01 4.5919716967E-01
+ 4.7346577781E-01 4.8603508512E-01 4.9691862865E-01 5.0613463383E-01
+ 5.1370593297E-01 5.1965982845E-01 5.2402789379E-01 5.2684589952E-01
+ 5.2815358968E-01 5.2799437564E-01 5.2641517707E-01 5.2346624918E-01
+ 5.1920089581E-01 5.1367518547E-01 5.0694774709E-01 4.9907972945E-01
+ 4.9013401916E-01 4.8017535798E-01 4.6927016539E-01 4.5748618394E-01
+ 4.4489170482E-01 4.3155596110E-01 4.1754931940E-01 4.0294117338E-01
+ 3.8780133911E-01 3.7220014314E-01 3.5620614219E-01 3.3988739277E-01
+ 3.2331212672E-01 3.0654574413E-01 2.8965261934E-01 2.7269711618E-01
+ 2.5573924225E-01 2.3883841503E-01 2.2205278686E-01 2.0543579494E-01
+ 1.8904075968E-01 1.7291742758E-01 1.5711196531E-01 1.4167063612E-01
+ 1.2663309829E-01 1.1203866921E-01 9.7923165724E-02 8.4317711735E-02
+ 7.1253884613E-02 5.8755590645E-02 4.6847236795E-02 3.5548129738E-02
+ 2.4874563759E-02 1.4841152140E-02 5.4563557998E-03 -3.2703226566E-03
+ -1.1337186840E-02 -1.8741555727E-02 -2.5486722697E-02 -3.1577150264E-02
+ -3.7021091286E-02 -4.1829799758E-02 -4.6016498639E-02 -4.9598829165E-02
+ -5.2594999997E-02 -5.5028636500E-02 -5.6922935330E-02 -5.8307140270E-02
+ -5.9209534599E-02 -5.9664332124E-02 -5.9705832428E-02 -5.9369029092E-02
+ -5.8691419100E-02 -5.7705312236E-02 -5.6447291801E-02 -5.4947241491E-02
+ -5.3240021314E-02 -5.1352841478E-02 -4.9318082031E-02 -4.7160331722E-02
+ -4.4908835838E-02 -4.2585580116E-02 -4.0216139716E-02 -3.7820023035E-02
+ -3.5418692760E-02 -3.3029374138E-02 -3.0669106872E-02 -2.8353043728E-02
+ -2.6093668857E-02 -2.3904229784E-02 -2.1792746201E-02 -1.9770626866E-02
+ -1.7842114384E-02 -1.6015685627E-02 -1.4293612827E-02 -1.2680343990E-02
+ -1.1177331560E-02 -9.7851417382E-03 -8.5044305564E-03 -7.3326239429E-03
+ -6.2693748279E-03 -5.3102653764E-03 -4.4526086808E-03 -3.6918930410E-03
+ -3.0232743070E-03 -2.4419369525E-03 -1.9418975692E-03 -1.5175693907E-03
+ -1.1627539780E-03 -8.7112900008E-04 -6.3640440350E-04 -4.5231183766E-04
+ -3.1201940098E-04 -2.0975719358E-04 -1.3888918002E-04 -9.3415843128E-05
+ -6.7802277028E-05 -5.7028722151E-05 -5.2734908171E-05 -4.1030890393E-05
+ -2.0081933763E-05 -1.2882373408E-06 3.3083554841E-06 2.1724562002E-06
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 1.5438009786E-02 3.0803158511E-02 4.6022715274E-02
+ 6.1024209820E-02 7.5735563646E-02 9.0085222052E-02 1.0400228740E-01
+ 1.1741665385E-01 1.3025914381E-01 1.4246164629E-01 1.5395725730E-01
+ 1.6468042246E-01 1.7456708185E-01 1.8355481707E-01 1.9158300064E-01
+ 1.9859294738E-01 2.0452806794E-01 2.0933402392E-01 2.1295888459E-01
+ 2.1535328474E-01 2.1647058317E-01 2.1626702169E-01 2.1470188350E-01
+ 2.1173765116E-01 2.0734016289E-01 2.0147876644E-01 1.9412647039E-01
+ 1.8526009211E-01 1.7486040017E-01 1.6291225226E-01 1.4940472603E-01
+ 1.3433124395E-01 1.1768968951E-01 9.9482511632E-02 7.9716826127E-02
+ 5.8404495355E-02 3.5562209146E-02 1.1211540588E-02 -1.4621005288E-02
+ -4.1903957411E-02 -7.0600861704E-02 -1.0067028063E-01 -1.3206580830E-01
+ -1.6473610364E-01 -1.9862494161E-01 -2.3367128310E-01 -2.6980936312E-01
+ -3.0696879952E-01 -3.4507472119E-01 -3.8404791422E-01 -4.2380498696E-01
+ -4.6425856540E-01 -5.0531748663E-01 -5.4688703197E-01 -5.8886917736E-01
+ -6.3116282843E-01 -6.7366414984E-01 -7.1626679392E-01 -7.5886229117E-01
+ -8.0134030667E-01 -8.4358902136E-01 -8.8549550697E-01 -9.2694598900E-01
+ -9.6782637978E-01 -1.0080225553E+00 -1.0474207125E+00 -1.0859078905E+00
+ -1.1233723118E+00 -1.1597037545E+00 -1.1947939354E+00 -1.2285370130E+00
+ -1.2608299532E+00 -1.2915728708E+00 -1.3206694445E+00 -1.3480272955E+00
+ -1.3735583479E+00 -1.3971791600E+00 -1.4188113910E+00 -1.4383819815E+00
+ -1.4558235101E+00 -1.4710744816E+00 -1.4840795944E+00 -1.4947899856E+00
+ -1.5031634522E+00 -1.5091646477E+00 -1.5127652528E+00 -1.5139441191E+00
+ -1.5126873849E+00 -1.5089885620E+00 -1.5028485944E+00 -1.4942758858E+00
+ -1.4832862980E+00 -1.4699030654E+00 -1.4541568683E+00 -1.4360856700E+00
+ -1.4157345589E+00 -1.3931556249E+00 -1.3684077786E+00 -1.3415565436E+00
+ -1.3126738229E+00 -1.2818375965E+00 -1.2491318127E+00 -1.2146458845E+00
+ -1.1784744067E+00 -1.1407168182E+00 -1.1014770775E+00 -1.0608632778E+00
+ -1.0189871003E+00 -9.7596351323E-01 -9.3191033999E-01 -8.8694817090E-01
+ -8.4119901822E-01 -7.9478656091E-01 -7.4783558741E-01 -7.0047218831E-01
+ -6.5282143303E-01 -6.0500852780E-01 -5.5715838725E-01 -5.0939482583E-01
+ -4.6183896433E-01 -4.1461054475E-01 -3.6782836595E-01 -3.2160568831E-01
+ -2.7605376458E-01 -2.3128194732E-01 -1.8739308113E-01 -1.4448647962E-01
+ -1.0265920926E-01 -6.2000369417E-02 -2.2594901446E-02 1.5474629391E-02
+ 5.2135798369E-02 8.7319236624E-02 1.2095998168E-01 1.5300313466E-01
+ 1.8339591075E-01 2.1209345891E-01 2.3905848780E-01 2.6425549605E-01
+ 2.8766109304E-01 3.0925409195E-01 3.2902044103E-01 3.4695456117E-01
+ 3.6305206619E-01 3.7732099323E-01 3.8977031613E-01 4.0041762632E-01
+ 4.0928597715E-01 4.1640238613E-01 4.2180301533E-01 4.2552456721E-01
+ 4.2761450913E-01 4.2812085669E-01 4.2709997830E-01 4.2461112367E-01
+ 4.2071930996E-01 4.1549422078E-01 4.0900933824E-01 4.0134404249E-01
+ 3.9258012871E-01 3.8280607628E-01 3.7211186641E-01 3.6059466772E-01
+ 3.4835290796E-01 3.3549121445E-01 3.2211928250E-01 3.0833728832E-01
+ 2.9425748383E-01 2.7996624205E-01 2.6556650507E-01 2.5113258785E-01
+ 2.3675663398E-01 2.2250115831E-01 2.0844595994E-01 1.9464296433E-01
+ 1.8115853627E-01 1.6803479527E-01 1.5532406090E-01 1.4305958609E-01
+ 1.3127937040E-01 1.2000877725E-01 1.0927164848E-01 9.9086330625E-02
+ 8.9463213782E-02 8.0414252448E-02 7.1937718376E-02 6.4039441748E-02
+ 5.6708257396E-02 4.9941654290E-02 4.3723788898E-02 3.8042348142E-02
+ 3.2879278221E-02 2.8214159291E-02 2.4026477336E-02 2.0290745660E-02
+ 1.6983238643E-02 1.4076614336E-02 1.1543480985E-02 9.3564034945E-03
+ 7.4868703542E-03 5.9060936235E-03 4.5877034974E-03 3.5011291279E-03
+ 2.6226362162E-03 1.9243945650E-03 1.3816084853E-03 9.7316086133E-04
+ 6.7174243985E-04 4.6244875341E-04 3.2298658733E-04 2.3695544556E-04
+ 1.9215429743E-04 1.7555116709E-04 1.6730427472E-04 1.3119427679E-04
+ 6.5077482574E-05 4.2148279450E-06 -1.0485776498E-05 -6.8855630167E-06
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 -1.0015466297E-03 -4.0038654836E-03 -8.9999951382E-03
+ -1.5978338862E-02 -2.4922673183E-02 -3.5812160095E-02 -4.8621363113E-02
+ -6.3320267446E-02 -7.9874304596E-02 -9.8244381770E-02 -1.1838691650E-01
+ -1.4025387693E-01 -1.6379282828E-01 -1.8894698602E-01 -2.1565527620E-01
+ -2.4385240366E-01 -2.7346892862E-01 -3.0443135215E-01 -3.3666221127E-01
+ -3.7008018418E-01 -4.0460020600E-01 -4.4013359598E-01 -4.7658819611E-01
+ -5.1386852215E-01 -5.5187592707E-01 -5.9050877745E-01 -6.2966264308E-01
+ -6.6923050023E-01 -7.0910294817E-01 -7.4916843964E-01 -7.8931352474E-01
+ -8.2942310886E-01 -8.6938072387E-01 -9.0906881094E-01 -9.4836901979E-01
+ -9.8716251414E-01 -1.0253302965E+00 -1.0627535363E+00 -1.0993139120E+00
+ -1.1348939630E+00 -1.1693774476E+00 -1.2026497088E+00 -1.2345980453E+00
+ -1.2651120881E+00 -1.2940841790E+00 -1.3214097505E+00 -1.3469877067E+00
+ -1.3707208040E+00 -1.3925160234E+00 -1.4122849402E+00 -1.4299440874E+00
+ -1.4454153167E+00 -1.4586261301E+00 -1.4695100200E+00 -1.4780067849E+00
+ -1.4840628232E+00 -1.4876314260E+00 -1.4886730291E+00 -1.4871554606E+00
+ -1.4830541553E+00 -1.4763523476E+00 -1.4670412332E+00 -1.4551201217E+00
+ -1.4405965197E+00 -1.4234862252E+00 -1.4038133881E+00 -1.3816104898E+00
+ -1.3569183364E+00 -1.3297860168E+00 -1.3002708278E+00 -1.2684381093E+00
+ -1.2343610949E+00 -1.1981207449E+00 -1.1598055071E+00 -1.1195110558E+00
+ -1.0773400016E+00 -1.0334015821E+00 -9.8781121569E-01 -9.4069020709E-01
+ -8.9216529756E-01 -8.4236821871E-01 -7.9143522082E-01 -7.3950657731E-01
+ -6.8672606767E-01 -6.3324044078E-01 -5.7919886125E-01 -5.2475234116E-01
+ -4.7005315977E-01 -4.1525427413E-01 -3.6050872321E-01 -3.0596902863E-01
+ -2.5178659496E-01 -1.9811120767E-01 -1.4509022436E-01 -9.2868081018E-02
+ -4.1585789122E-02 8.6196681407E-03 5.7615876626E-02 1.0527551140E-01
+ 1.5147683371E-01 1.9610388947E-01 2.3904776728E-01 2.8020632679E-01
+ 3.1948470124E-01 3.5679568426E-01 3.9205986903E-01 4.2520630116E-01
+ 4.5617281843E-01 4.8490573415E-01 5.1136020481E-01 5.3550006779E-01
+ 5.5729896971E-01 5.7673929134E-01 5.9381244767E-01 6.0851876072E-01
+ 6.2086797694E-01 6.3087833363E-01 6.3857670827E-01 6.4399859304E-01
+ 6.4718745897E-01 6.4819460822E-01 6.4707951236E-01 6.4390797852E-01
+ 6.3875282269E-01 6.3169422346E-01 6.2281701561E-01 6.1221163682E-01
+ 5.9997518004E-01 5.8620706617E-01 5.7101103956E-01 5.5449693747E-01
+ 5.3677340351E-01 5.1795353900E-01 4.9815398927E-01 4.7748815419E-01
+ 4.5607436974E-01 4.3402930776E-01 4.1146719679E-01 3.8850738819E-01
+ 3.6525984354E-01 3.4183802929E-01 3.1835204833E-01 2.9490511297E-01
+ 2.7160555159E-01 2.4854694202E-01 2.2582748391E-01 2.0353606578E-01
+ 1.8175681971E-01 1.6057261120E-01 1.4005254000E-01 1.2027122051E-01
+ 1.0128410171E-01 8.3151561767E-02 6.5919081143E-02 4.9630559934E-02
+ 3.4320577839E-02 2.0016320334E-02 6.7404794508E-03 -5.4963393839E-03
+ -1.6684258271E-02 -2.6828884364E-02 -3.5933944072E-02 -4.4020765875E-02
+ -5.1107476645E-02 -5.7230040217E-02 -6.2422975022E-02 -6.6729959763E-02
+ -7.0197659497E-02 -7.2871367753E-02 -7.4802899608E-02 -7.6038987921E-02
+ -7.6634682807E-02 -7.6636991943E-02 -7.6102343370E-02 -7.5077264607E-02
+ -7.3617656660E-02 -7.1768901507E-02 -6.9584486507E-02 -6.7108249819E-02
+ -6.4389414799E-02 -6.1470099095E-02 -5.8393561480E-02 -5.5200151078E-02
+ -5.1925760488E-02 -4.8608914295E-02 -4.5277209771E-02 -4.1967120642E-02
+ -3.8698540063E-02 -3.5502709726E-02 -3.2395541095E-02 -2.9399373907E-02
+ -2.6528819908E-02 -2.3796605126E-02 -2.1216022586E-02 -1.8791136247E-02
+ -1.6533250572E-02 -1.4440819190E-02 -1.2518366751E-02 -1.0764082017E-02
+ -9.1752682276E-03 -7.7493933803E-03 -6.4790283894E-03 -5.3592042506E-03
+ -4.3809194066E-03 -3.5356153359E-03 -2.8140810895E-03 -2.2062395442E-03
+ -1.7011290585E-03 -1.2892191417E-03 -9.5899559720E-04 -7.0037687684E-04
+ -5.0411260698E-04 -3.5798790390E-04 -2.5555860755E-04 -1.8663085856E-04
+ -1.4329212437E-04 -1.2022825220E-04 -1.1229552579E-04 -1.0868499721E-04
+ -9.2366930341E-05 -5.1606645175E-05 -1.1215239747E-05 6.0297442955E-06
+ 5.9004184630E-06 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 -5.7940262338E-05 -2.3075640690E-04 -5.1544891587E-04
+ -9.0706649616E-04 -1.3987774843E-03 -1.9819689175E-03 -2.6463723814E-03
+ -3.3802155053E-03 -4.1703977383E-03 -5.0026888171E-03 -5.8619481244E-03
+ -6.7323629354E-03 -7.5977033723E-03 -8.4415916977E-03 -9.2477834751E-03
+ -1.0000457911E-02 -1.0684514701E-02 -1.1285874461E-02 -1.1791779901E-02
+ -1.2191094762E-02 -1.2474597531E-02 -1.2635266975E-02 -1.2668556508E-02
+ -1.2572654519E-02 -1.2348727761E-02 -1.2001145148E-02 -1.1537679244E-02
+ -1.0969682871E-02 -1.0312238767E-02 -9.5842798272E-03 -8.8086783946E-03
+ -8.0123020003E-03 -7.2260345211E-03 -6.4847640259E-03 -5.8273278910E-03
+ -5.2964303321E-03 -4.9385085312E-03 -4.8035739750E-03 -4.9450093166E-03
+ -5.4193262641E-03 -6.2858889842E-03 -7.6066036026E-03 -9.4455705694E-03
+ -1.1868705193E-02 -1.4943327469E-02 -1.8737726033E-02 -2.3320690847E-02
+ -2.8761020065E-02 -3.5127018672E-02 -4.2485976633E-02 -5.0903630946E-02
+ -6.0443585615E-02 -7.1166807985E-02 -8.3131032875E-02 -9.6390204108E-02
+ -1.1099397170E-01 -1.2698706407E-01 -1.4440886867E-01 -1.6329281212E-01
+ -1.8366596333E-01 -2.0554852463E-01 -2.2895338793E-01 -2.5388581162E-01
+ -2.8034295348E-01 -3.0831362705E-01 -3.3777802516E-01 -3.6870744730E-01
+ -4.0106415145E-01 -4.3480123154E-01 -4.6986253436E-01 -5.0618264431E-01
+ -5.4368693713E-01 -5.8229167369E-01 -6.2190416051E-01 -6.6242296986E-01
+ -7.0373821536E-01 -7.4573187328E-01 -7.8827825669E-01 -8.3124439181E-01
+ -8.7449055148E-01 -9.1787081742E-01 -9.6123369311E-01 -1.0044227640E+00
+ -1.0472774020E+00 -1.0896335106E+00 -1.1313243065E+00 -1.1721811333E+00
+ -1.2120343035E+00 -1.2507139623E+00 -1.2880509707E+00 -1.3238777990E+00
+ -1.3580294288E+00 -1.3903441181E+00 -1.4206646084E+00 -1.4488388921E+00
+ -1.4747209843E+00 -1.4981718407E+00 -1.5190601836E+00 -1.5372632944E+00
+ -1.5526677679E+00 -1.5651698058E+00 -1.5746771244E+00 -1.5811085269E+00
+ -1.5843946409E+00 -1.5844784739E+00 -1.5813155806E+00 -1.5748750158E+00
+ -1.5651397903E+00 -1.5521063053E+00 -1.5357848326E+00 -1.5161991919E+00
+ -1.4933883328E+00 -1.4674045851E+00 -1.4383139905E+00 -1.4061960396E+00
+ -1.3711441300E+00 -1.3332641064E+00 -1.2926743463E+00 -1.2495055118E+00
+ -1.2038991888E+00 -1.1560077024E+00 -1.1059946213E+00 -1.0540310040E+00
+ -1.0002968545E+00 -9.4498160494E-01 -8.8827889971E-01 -8.3038843631E-01
+ -7.7151775440E-01 -7.1187418872E-01 -6.5166856986E-01 -5.9111825026E-01
+ -5.3043393340E-01 -4.6982984927E-01 -4.0952191417E-01 -3.4971577186E-01
+ -2.9062116087E-01 -2.3244021428E-01 -1.7536626293E-01 -1.1959668506E-01
+ -6.5308086775E-02 -1.2678359306E-02 3.8125181832E-02 8.6951394843E-02
+ 1.3364564348E-01 1.7808232873E-01 2.2013315541E-01 2.5968989310E-01
+ 2.9665663736E-01 3.3094471747E-01 3.6249163351E-01 3.9123174290E-01
+ 4.1713335285E-01 4.4016259199E-01 4.6031272291E-01 4.7758436836E-01
+ 4.9199692485E-01 5.0358507481E-01 5.1239550936E-01 5.1849596013E-01
+ 5.2196137529E-01 5.2289121330E-01 5.2138934068E-01 5.1758551756E-01
+ 5.1161340324E-01 5.0363006749E-01 4.9380344663E-01 4.8229789559E-01
+ 4.6930105396E-01 4.5496812825E-01 4.3948589400E-01 4.2300120117E-01
+ 4.0569568111E-01 3.8770601921E-01 3.6920397595E-01 3.5031594956E-01
+ 3.3119949204E-01 3.1197011241E-01 2.9276732986E-01 2.7369568440E-01
+ 2.5487322026E-01 2.3639378517E-01 2.1835119354E-01 2.0082896295E-01
+ 1.8389498154E-01 1.6762253672E-01 1.5205334050E-01 1.3724993067E-01
+ 1.2323138498E-01 1.1004200786E-01 9.7688653300E-02 8.6190279969E-02
+ 7.5547798991E-02 6.5755743449E-02 5.6808409729E-02 4.8680977126E-02
+ 4.1358932861E-02 3.4806240635E-02 2.8992958519E-02 2.3880726731E-02
+ 1.9427475531E-02 1.5589937071E-02 1.2322156088E-02 9.5731216194E-03
+ 7.2977713492E-03 5.4437021926E-03 3.9622403151E-03 2.8094439447E-03
+ 1.9284743118E-03 1.2861939564E-03 8.3287939843E-04 5.3121685181E-04
+ 3.5199094753E-04 2.4847723761E-04 2.0932027299E-04 2.0303324497E-04
+ 2.1116257059E-04 2.2997579700E-04 2.4831284813E-04 2.5308112248E-04
+ 2.1709751062E-04 1.2347220025E-04 2.7163626625E-05 -1.4068253300E-05
+ -1.3766517690E-05 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 -6.3120344986E-06 -5.0284761003E-05 -1.6852401380E-04
+ -3.9553856366E-04 -7.6272308821E-04 -1.2973785891E-03 -2.0217821480E-03
+ -2.9523174168E-03 -4.0986766210E-03 -5.4631441347E-03 -7.0399708558E-03
+ -8.8148476923E-03 -1.0764485461E-02 -1.2856307406E-02 -1.5048259426E-02
+ -1.7288741831E-02 -1.9516665295E-02 -2.1661632270E-02 -2.3644243928E-02
+ -2.5376531358E-02 -2.6762508391E-02 -2.7698842263E-02 -2.8075636878E-02
+ -2.7777322499E-02 -2.6683644226E-02 -2.4670740783E-02 -2.1612304047E-02
+ -1.7380808659E-02 -1.1848800577E-02 -4.8902323468E-03 3.6181672270E-03
+ 1.3795503074E-02 2.5755316765E-02 3.9604192397E-02 5.5440390994E-02
+ 7.3352504942E-02 9.3418180210E-02 1.1570287993E-01 1.4025873173E-01
+ 1.6712346490E-01 1.9631944263E-01 2.2785280041E-01 2.6171270918E-01
+ 2.9787076595E-01 3.3628052136E-01 3.7687714526E-01 4.1957725270E-01
+ 4.6427889046E-01 5.1086165367E-01 5.5918696630E-01 6.0909852482E-01
+ 6.6042298138E-01 7.1297057436E-01 7.6653613215E-01 8.2090013860E-01
+ 8.7582979006E-01 9.3108056512E-01 9.8639735304E-01 1.0415163384E+00
+ 1.0961663745E+00 1.1500708685E+00 1.2029496454E+00 1.2545205373E+00
+ 1.3045017047E+00 1.3526132941E+00 1.3985793606E+00 1.4421300466E+00
+ 1.4830033864E+00 1.5209471655E+00 1.5557207788E+00 1.5870971100E+00
+ 1.6148641757E+00 1.6388267036E+00 1.6588076602E+00 1.6746496344E+00
+ 1.6862160918E+00 1.6933925061E+00 1.6960872367E+00 1.6942323877E+00
+ 1.6877844226E+00 1.6767246222E+00 1.6610593659E+00 1.6408202348E+00
+ 1.6160639345E+00 1.5868720394E+00 1.5533505593E+00 1.5156293317E+00
+ 1.4738612456E+00 1.4282213023E+00 1.3789055205E+00 1.3261296961E+00
+ 1.2701280254E+00 1.2111519264E+00 1.1494677170E+00 1.0853551599E+00
+ 1.0191059026E+00 9.5102145173E-01 8.8141123982E-01 8.1059065429E-01
+ 7.3887904226E-01 6.6659883575E-01 5.9407025090E-01 5.2161200538E-01
+ 4.4953891569E-01 3.7815984256E-01 3.0777667265E-01 2.3868088382E-01
+ 1.7115121118E-01 1.0545448294E-01 4.1843203510E-02 -1.9444107391E-02
+ -7.8190055896E-02 -1.3419361525E-01 -1.8727261639E-01 -2.3726333705E-01
+ -2.8402648123E-01 -3.2744191716E-01 -3.6741044953E-01 -4.0385537250E-01
+ -4.3672251577E-01 -4.6597830179E-01 -4.9161108813E-01 -5.1363053497E-01
+ -5.3206600756E-01 -5.4696839154E-01 -5.5840600553E-01 -5.6646493637E-01
+ -5.7125191214E-01 -5.7288545507E-01 -5.7149925776E-01 -5.6724689550E-01
+ -5.6028470952E-01 -5.5078466870E-01 -5.3893267660E-01 -5.2491143841E-01
+ -5.0892074963E-01 -4.9116091670E-01 -4.7183054382E-01 -4.5114576019E-01
+ -4.2930298189E-01 -4.0651187069E-01 -3.8297741577E-01 -3.5889118932E-01
+ -3.3446131636E-01 -3.0986241436E-01 -2.8528423776E-01 -2.6089637719E-01
+ -2.3686021004E-01 -2.1333630573E-01 -1.9045540893E-01 -1.6836302900E-01
+ -1.4716261371E-01 -1.2697056692E-01 -1.0787133985E-01 -8.9947548574E-02
+ -7.3262208551E-02 -5.7864450641E-02 -4.3793532050E-02 -3.1066438281E-02
+ -1.9696787530E-02 -9.6714016848E-03 -9.7702062757E-04 6.4273823536E-03
+ 1.2582670797E-02 1.7554663892E-02 2.1413491183E-02 2.4239735354E-02
+ 2.6126309509E-02 2.7158631441E-02 2.7441551638E-02 2.7061737120E-02
+ 2.6130636978E-02 2.4731785858E-02 2.2976787626E-02 2.0943216524E-02
+ 1.8736107468E-02 1.6424380237E-02 1.4099753865E-02 1.1820495723E-02
+ 9.6583477010E-03 7.6594707245E-03 5.8694792039E-03 4.3212157245E-03
+ 3.0290761439E-03 2.0111780538E-03 1.2472974928E-03 7.3871887723E-04
+ 4.3200325140E-04 3.0544255907E-04 2.7277136470E-04 1.9314779769E-04
+ 6.9961180078E-05 -1.0770281988E-05 -1.6871746599E-05 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 -6.3294120924E-05 -5.0546697514E-04 -1.7009769954E-03
+ -4.0154869981E-03 -7.8015783911E-03 -1.3394598562E-02 -2.1108683782E-02
+ -3.1232998231E-02 -4.4028227611E-02 -5.9723363289E-02 -7.8512810046E-02
+ -1.0055384732E-01 -1.2596447028E-01 -1.5482163338E-01 -1.8715991503E-01
+ -2.2297061773E-01 -2.6220131405E-01 -3.0475584383E-01 -3.5049476415E-01
+ -3.9923624868E-01 -4.5075742861E-01 -5.0479616337E-01 -5.6105322413E-01
+ -6.1919487049E-01 -6.7885579496E-01 -7.3964240784E-01 -8.0113643077E-01
+ -8.6289876415E-01 -9.2447359141E-01 -9.8539268007E-01 -1.0451798390E+00
+ -1.1033554856E+00 -1.1594412793E+00 -1.2129647882E+00 -1.2634641057E+00
+ -1.3104924443E+00 -1.3536225513E+00 -1.3924510318E+00 -1.4266024424E+00
+ -1.4557331346E+00 -1.4795348332E+00 -1.4977379113E+00 -1.5101143061E+00
+ -1.5164800626E+00 -1.5166974801E+00 -1.5106768547E+00 -1.4983777486E+00
+ -1.4798097857E+00 -1.4550330736E+00 -1.4241581422E+00 -1.3873454031E+00
+ -1.3448038821E+00 -1.2967901729E+00 -1.2436062299E+00 -1.1855970137E+00
+ -1.1231482093E+00 -1.0566823378E+00 -9.8665633698E-01 -9.1355674714E-01
+ -8.3789658771E-01 -7.6021062219E-01 -6.8105073040E-01 -6.0098219564E-01
+ -5.2057766218E-01 -4.4041325562E-01 -3.6106387274E-01 -2.8309764391E-01
+ -2.0707161895E-01 -1.3352727387E-01 -6.2986018891E-02 4.0554065703E-03
+ 6.7128790563E-02 1.2579811319E-01 1.7966311656E-01 2.2836245672E-01
+ 2.7157650229E-01 3.0902979936E-01 3.4049290377E-01 3.6578408968E-01
+ 3.8477048676E-01 3.9736880306E-01 4.0354560834E-01 4.0331717922E-01
+ 3.9674891182E-01 3.8395431149E-01 3.6509357335E-01 3.4037177107E-01
+ 3.1003667515E-01 2.7437622561E-01 2.3371568681E-01 1.8841451579E-01
+ 1.3886297753E-01 8.5479331923E-02 2.8704295621E-02 -3.1002226630E-02
+ -9.3164586169E-02 -1.5729586608E-01 -2.2290201041E-01 -2.8948593347E-01
+ -3.5655157198E-01 -4.2360528648E-01 -4.9016726942E-01 -5.5576893561E-01
+ -6.1995749396E-01 -6.8229958001E-01 -7.4238256908E-01 -7.9982100408E-01
+ -8.5426023588E-01 -9.0537351368E-01 -9.5286591171E-01 -9.9647275515E-01
+ -1.0359721683E+00 -1.0711743905E+00 -1.1019254866E+00 -1.1281058423E+00
+ -1.1496387133E+00 -1.1664798483E+00 -1.1786197234E+00 -1.1860847599E+00
+ -1.1889347983E+00 -1.1872598500E+00 -1.1811821039E+00 -1.1708494525E+00
+ -1.1564352863E+00 -1.1381408837E+00 -1.1161832413E+00 -1.0907980836E+00
+ -1.0622448559E+00 -1.0307864559E+00 -9.9669826534E-01 -9.6027588583E-01
+ -9.2180191195E-01 -8.8157200628E-01 -8.3988965380E-01 -7.9703773935E-01
+ -7.5331361705E-01 -7.0900063669E-01 -6.6436748250E-01 -6.1969582323E-01
+ -5.7522689697E-01 -5.3121020987E-01 -4.8787703743E-01 -4.4543271789E-01
+ -4.0409220534E-01 -3.6402213843E-01 -3.2539822389E-01 -2.8836503393E-01
+ -2.5305219056E-01 -2.1957921281E-01 -1.8803222170E-01 -1.5850139055E-01
+ -1.3103602982E-01 -1.0568800694E-01 -8.2478613761E-02 -6.1421050794E-02
+ -4.2507831202E-02 -2.5716534174E-02 -1.1010140050E-02 1.6668260755E-03
+ 1.2381578929E-02 2.1221105678E-02 2.8283495480E-02 3.3687050776E-02
+ 3.7562612439E-02 4.0058292393E-02 4.1346877612E-02 4.1575987062E-02
+ 4.0936726805E-02 3.9551192772E-02 3.7594651712E-02 3.5168281576E-02
+ 3.2426356174E-02 2.9449762190E-02 2.6367156806E-02 2.3242106043E-02
+ 2.0174967536E-02 1.7213401476E-02 1.4428672205E-02 1.1853900942E-02
+ 9.5317382221E-03 7.4817779932E-03 5.7196986201E-03 4.2520300043E-03
+ 3.0700140432E-03 2.1670114957E-03 1.5128197818E-03 1.0871230362E-03
+ 8.4217260388E-04 7.7074597368E-04 7.4640892072E-04 5.3965341518E-04
+ 2.0286098882E-04 -2.9160262432E-05 -4.5679821481E-05 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 3.8315811943E-08 6.1297333180E-07 3.1025042621E-06
+ 9.8024594141E-06 2.3922381733E-05 4.9581520945E-05 9.1803242895E-05
+ 1.5650807417E-04 2.5050531082E-04 3.8148310899E-04 5.5799696545E-04
+ 7.8945648681E-04 1.0861103389E-03 1.4590292614E-03 1.9200870271E-03
+ 2.4819392236E-03 3.1579997310E-03 3.9624147716E-03 4.9100344069E-03
+ 6.0163813614E-03 7.2976170592E-03 8.7705047637E-03 1.0452369720E-02
+ 1.2361056216E-02 1.4514881470E-02 1.6932586309E-02 1.9633282554E-02
+ 2.2636397116E-02 2.5961612763E-02 2.9628805582E-02 3.3657979158E-02
+ 3.8069195516E-02 4.2882502920E-02 4.8117860578E-02 5.3795060458E-02
+ 5.9933646237E-02 6.6552829734E-02 7.3671404813E-02 8.1307659132E-02
+ 8.9479283968E-02 9.8203282341E-02 1.0749587573E-01 1.1737240977E-01
+ 1.2784725923E-01 1.3893373259E-01 1.5064397668E-01 1.6298888181E-01
+ 1.7597798779E-01 1.8961939106E-01 2.0391965357E-01 2.1888371384E-01
+ 2.3451480169E-01 2.5081435376E-01 2.6778193510E-01 2.8541516411E-01
+ 3.0370963981E-01 3.2265887967E-01 3.4225425462E-01 3.6248494001E-01
+ 3.8333786307E-01 4.0479766432E-01 4.2684666492E-01 4.4946483446E-01
+ 4.7262978156E-01 4.9631673784E-01 5.2049855473E-01 5.4514571755E-01
+ 5.7022635885E-01 5.9570628276E-01 6.2154899953E-01 6.4771577533E-01
+ 6.7416568524E-01 7.0085567522E-01 7.2774063757E-01 7.5477349474E-01
+ 7.8190529252E-01 8.0908530199E-01 8.3626113630E-01 8.6337886615E-01
+ 8.9038315157E-01 9.1721738018E-01 9.4382381339E-01 9.7014374026E-01
+ 9.9611763852E-01 1.0216853422E+00 1.0467862152E+00 1.0713593310E+00
+ 1.0953436561E+00 1.1186782392E+00 1.1413024024E+00 1.1631559367E+00
+ 1.1841792983E+00 1.2043138120E+00 1.2235018621E+00 1.2416870924E+00
+ 1.2588146071E+00 1.2748311651E+00 1.2896853735E+00 1.3033278777E+00
+ 1.3157115470E+00 1.3267916953E+00 1.3365261554E+00 1.3448755203E+00
+ 1.3518032953E+00 1.3572760474E+00 1.3612635983E+00 1.3637390887E+00
+ 1.3646790368E+00 1.3640635857E+00 1.3618765651E+00 1.3581057634E+00
+ 1.3527424791E+00 1.3457820437E+00 1.3372237794E+00 1.3270713141E+00
+ 1.3153317477E+00 1.3020164435E+00 1.2871409875E+00 1.2707249916E+00
+ 1.2527916162E+00 1.2333682417E+00 1.2124867093E+00 1.1901815830E+00
+ 1.1664916401E+00 1.1414599185E+00 1.1151319343E+00 1.0875568703E+00
+ 1.0587880312E+00 1.0288805702E+00 9.9789293382E-01 9.6588746084E-01
+ 9.3292723850E-01 8.9907878136E-01 8.6441134927E-01 8.2899455580E-01
+ 7.9290137195E-01 7.5620559129E-01 7.1898179915E-01 6.8130749386E-01
+ 6.4325864139E-01 6.0491351971E-01 5.6635040966E-01 5.2764682609E-01
+ 4.8888223663E-01 4.5013315070E-01 4.1147762450E-01 3.7299175403E-01
+ 3.3475079624E-01 2.9682936167E-01 2.5929924405E-01 2.2223232574E-01
+ 1.8569661042E-01 1.4975960753E-01 1.1448537868E-01 7.9936193932E-02
+ 4.6171228631E-02 1.3247038415E-02 -1.8782990750E-02 -4.9868393910E-02
+ -7.9962391140E-02 -1.0902090944E-01 -1.3700447341E-01 -1.6387564303E-01
+ -1.8960281237E-01 -2.1415535758E-01 -2.3750997458E-01 -2.5964285801E-01
+ -2.8053897036E-01 -3.0018121913E-01 -3.1856269009E-01 -3.3567272693E-01
+ -3.5151246474E-01 -3.6607749201E-01 -3.7937631306E-01 -3.9141098351E-01
+ -4.0219654921E-01 -4.1174161594E-01 -4.2006679546E-01 -4.2718741478E-01
+ -4.3312846788E-01 -4.3791225711E-01 -4.4156680404E-01 -4.4412168774E-01
+ -4.4560650612E-01 -4.4605838657E-01 -4.4550707577E-01 -4.4399736525E-01
+ -4.4155906302E-01 -4.3824097276E-01 -4.3407674588E-01 -4.2911378838E-01
+ -4.2339296641E-01 -4.1695747862E-01 -4.0985586656E-01 -4.0212569024E-01
+ -3.9382296201E-01 -3.8498215612E-01 -3.7565621589E-01 -3.6588643647E-01
+ -3.5571731634E-01 -3.4519790702E-01 -3.3436405784E-01 -3.2326914046E-01
+ -3.1194649359E-01 -3.0044177430E-01 -2.8879594154E-01 -2.7704289643E-01
+ -2.6523044363E-01 -2.5338549380E-01 -2.4154878088E-01 -2.2975352148E-01
+ -2.1802791059E-01 -2.0641125222E-01 -1.9492424484E-01 -1.8359844880E-01
+ -1.7246011836E-01 -1.6152912193E-01 -1.5083453792E-01 -1.4039122898E-01
+ -1.3021932594E-01 -1.2033845339E-01 -1.1075975620E-01 -1.0150026283E-01
+ -9.2570353470E-02 -8.3978675397E-02 -7.5737344662E-02 -6.7849942432E-02
+ -6.0322481238E-02 -5.3159772504E-02 -4.6362612997E-02 -3.9932455338E-02
+ -3.3868795264E-02 -2.8169473925E-02 -2.2831139023E-02 -1.7849924611E-02
+ -1.3220564456E-02 -8.9350761711E-03 -4.9878564255E-03 -1.3701586846E-03
+ 1.9289171709E-03 4.9166791767E-03 7.6048755007E-03 1.0006067546E-02
+ 1.2128926898E-02 1.3987591853E-02 1.5595339022E-02 1.6961753287E-02
+ 1.8102601180E-02 1.9031250204E-02 1.9757656143E-02 2.0298363380E-02
+ 2.0666497999E-02 2.0871792674E-02 2.0930692937E-02 2.0855986100E-02
+ 2.0656590009E-02 2.0348008922E-02 1.9942752326E-02 1.9448393411E-02
+ 1.8878746782E-02 1.8246171727E-02 1.7556487911E-02 1.6821225392E-02
+ 1.6052686855E-02 1.5254702874E-02 1.4436134313E-02 1.3609187985E-02
+ 1.2775681253E-02 1.1942025324E-02 1.1119039602E-02 1.0307770967E-02
+ 9.5124731369E-03 8.7406303977E-03 7.9943798122E-03 7.2754587487E-03
+ 6.5882173080E-03 5.9355325068E-03 5.3171334708E-03 4.7347444666E-03
+ 4.1912833739E-03 3.6851666408E-03 3.2165552416E-03 2.7865746712E-03
+ 2.3940117608E-03 2.0377514677E-03 1.7170917530E-03 1.4310141727E-03
+ 1.1777316006E-03 9.5564789991E-04 7.6289157239E-04 5.9777252761E-04
+ 4.5833990245E-04 3.4213929769E-04 2.4705697662E-04 1.7138939921E-04
+ 1.1293898568E-04 6.8350309914E-05 3.6613118386E-05 1.5660693449E-05
+ 2.3607885881E-06 -5.5252865182E-06 -8.2511694964E-06 -7.3328191037E-06
+ -6.3411514084E-06 -4.5172649140E-06 -2.0422983004E-06 1.2355646703E-07
+ 4.6470895702E-07 4.3281995619E-07 1.6798340697E-07 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 0.0000000000E+00 3.3266684655E-08 5.3205234825E-07 2.6917043445E-06
+ 8.4991037993E-06 2.0724620548E-05 4.2910853476E-05 7.9358160072E-05
+ 1.3510698062E-04 2.1591696446E-04 3.2824290834E-04 4.7920751965E-04
+ 6.7657102137E-04 9.2869761951E-04 1.2445188592E-03 1.6334939007E-03
+ 2.1055667552E-03 2.6711205239E-03 3.3409286970E-03 4.1261035747E-03
+ 5.0380418832E-03 6.0883676718E-03 7.2888725843E-03 8.6514536151E-03
+ 1.0188048471E-02 1.1910568675E-02 1.3830830556E-02 1.5960484300E-02
+ 1.8310941233E-02 2.0893299536E-02 2.3718268601E-02 2.6796092259E-02
+ 3.0136471125E-02 3.3748484316E-02 3.7640510799E-02 4.1820150736E-02
+ 4.6294146969E-02 5.1068307219E-02 5.6147427031E-02 6.1535214035E-02
+ 6.7234213819E-02 7.3245737744E-02 7.9569793065E-02 8.6205015811E-02
+ 9.3148606750E-02 1.0039627085E-01 1.0794216059E-01 1.1577882359E-01
+ 1.2389715500E-01 1.3228635471E-01 1.4093389001E-01 1.4982546411E-01
+ 1.5894499138E-01 1.6827457754E-01 1.7779450833E-01 1.8748324471E-01
+ 1.9731742423E-01 2.0727187322E-01 2.1731962220E-01 2.2743193484E-01
+ 2.3757834005E-01 2.4772667612E-01 2.5784314260E-01 2.6789235793E-01
+ 2.7783743170E-01 2.8764003957E-01 2.9726050897E-01 3.0665791563E-01
+ 3.1579018535E-01 3.2461420491E-01 3.3308594153E-01 3.4116057045E-01
+ 3.4879260891E-01 3.5593605768E-01 3.6254454962E-01 3.6857150442E-01
+ 3.7397028928E-01 3.7869438555E-01 3.8269755680E-01 3.8593402613E-01
+ 3.8835865395E-01 3.8992711936E-01 3.9059610379E-01 3.9032347608E-01
+ 3.8906847844E-01 3.8679191233E-01 3.8345632358E-01 3.7902618599E-01
+ 3.7346808245E-01 3.6675088293E-01 3.5884591843E-01 3.4972715010E-01
+ 3.3937133271E-01 3.2775818388E-01 3.1487050877E-01 3.0069434961E-01
+ 2.8521912798E-01 2.6843776260E-01 2.5034678227E-01 2.3094642829E-01
+ 2.1024074560E-01 1.8823772482E-01 1.6494919603E-01 1.4039101407E-01
+ 1.1458307803E-01 8.7549349132E-02 5.9317925511E-02 2.9920933010E-02
+ -6.0557286148E-04 -3.2221459052E-02 -6.4882626467E-02 -9.8540866113E-02
+ -1.3314457474E-01 -1.6863828344E-01 -2.0496289589E-01 -2.4205553187E-01
+ -2.7985059278E-01 -3.1827905433E-01 -3.5726870986E-01 -3.9674455683E-01
+ -4.3662939186E-01 -4.7684332245E-01 -5.1730377700E-01 -5.5792720025E-01
+ -5.9862786001E-01 -6.3931806456E-01 -6.7990976761E-01 -7.2031371452E-01
+ -7.6043936546E-01 -8.0019671356E-01 -8.3949533190E-01 -8.7824428904E-01
+ -9.1635428112E-01 -9.5373606422E-01 -9.9030121984E-01 -1.0259634768E+00
+ -1.0606373726E+00 -1.0942397575E+00 -1.1266897523E+00 -1.1579083761E+00
+ -1.1878200907E+00 -1.2163517857E+00 -1.2434338089E+00 -1.2689998916E+00
+ -1.2929875166E+00 -1.3153379522E+00 -1.3359967030E+00 -1.3549135404E+00
+ -1.3720424784E+00 -1.3873428434E+00 -1.4007775012E+00 -1.4123161553E+00
+ -1.4219311872E+00 -1.4296023554E+00 -1.4353128676E+00 -1.4390523556E+00
+ -1.4408154145E+00 -1.4406014726E+00 -1.4384168756E+00 -1.4342707021E+00
+ -1.4281811995E+00 -1.4201668917E+00 -1.4102578643E+00 -1.3984818282E+00
+ -1.3848804659E+00 -1.3694903060E+00 -1.3523643151E+00 -1.3335466237E+00
+ -1.3130996023E+00 -1.2910739259E+00 -1.2675396152E+00 -1.2425530779E+00
+ -1.2161912423E+00 -1.1885155896E+00 -1.1596082104E+00 -1.1295357838E+00
+ -1.0983838381E+00 -1.0662239566E+00 -1.0331434073E+00 -9.9921844653E-01
+ -9.6453629502E-01 -9.2917768065E-01 -8.9322797937E-01 -8.5677214902E-01
+ -8.1989202795E-01 -7.8267641720E-01 -7.4520217795E-01 -7.0756128570E-01
+ -6.6982583227E-01 -6.3208619922E-01 -5.9441393812E-01 -5.5689200118E-01
+ -5.1959432925E-01 -4.8259412032E-01 -4.4596712608E-01 -4.0977626468E-01
+ -3.7409775047E-01 -3.3898703183E-01 -3.0451153671E-01 -2.7072715748E-01
+ -2.3768900481E-01 -2.0545274352E-01 -1.7406231281E-01 -1.4356947445E-01
+ -1.1401162980E-01 -8.5429617268E-02 -5.7859243375E-02 -3.1329889662E-02
+ -5.8732459492E-03 1.8489237713E-02 4.1735399383E-02 6.3847725676E-02
+ 8.4813091334E-02 1.0462079599E-01 1.2326388460E-01 1.4073960063E-01
+ 1.5704763990E-01 1.7219010722E-01 1.8617644153E-01 1.9901286857E-01
+ 2.1071304115E-01 2.2129415836E-01 2.3077009426E-01 2.3916643181E-01
+ 2.4650348376E-01 2.5280412021E-01 2.5810484259E-01 2.6242606223E-01
+ 2.6580252423E-01 2.6827177069E-01 2.6986054413E-01 2.7061249131E-01
+ 2.7056319945E-01 2.6974541286E-01 2.6821019666E-01 2.6598904516E-01
+ 2.6312011102E-01 2.5965942936E-01 2.5563366033E-01 2.5108720726E-01
+ 2.4607225936E-01 2.4061676341E-01 2.3476725426E-01 2.2857097480E-01
+ 2.2205607854E-01 2.1526931691E-01 2.0825253368E-01 2.0103286706E-01
+ 1.9365538784E-01 1.8615659220E-01 1.7856135872E-01 1.7091131527E-01
+ 1.6323800730E-01 1.5556291153E-01 1.4792268757E-01 1.4034450615E-01
+ 1.3284551991E-01 1.2545622332E-01 1.1819999639E-01 1.1108906914E-01
+ 1.0414698777E-01 9.7393761801E-02 9.0836505406E-02 8.4491525366E-02
+ 7.8375557908E-02 7.2490863365E-02 6.6846770696E-02 6.1456398204E-02
+ 5.6317873488E-02 5.1434759731E-02 4.6814612187E-02 4.2453668575E-02
+ 3.8350809555E-02 3.4506569359E-02 3.0916928416E-02 2.7576777571E-02
+ 2.4481305493E-02 2.1624651961E-02 1.8999599278E-02 1.6598165746E-02
+ 1.4410633427E-02 1.2429657937E-02 1.0645701754E-02 9.0456480595E-03
+ 7.6213665219E-03 6.3633351448E-03 5.2583283545E-03 4.2940902043E-03
+ 3.4634788855E-03 2.7554849481E-03 2.1524101301E-03 1.6502035888E-03
+ 1.2390966120E-03 9.0480959860E-04 6.3741907662E-04 4.3209490239E-04
+ 2.7985798772E-04 1.6418082078E-04 8.5179584858E-05 3.6146416842E-05
+ 6.0475379897E-06 -1.2345697156E-05 -1.7953693869E-05 -1.4773254035E-05
+ -1.2719489184E-05 -9.1642154418E-06 -4.1726585079E-06 2.4379832430E-07
+ 9.1695131572E-07 8.5402879006E-07 3.3146037690E-07 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00
+
+
+ 1.6486997972E+01 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 1.9459616265E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 7.6233058355E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 9.9807380329E-01
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 2.9218018942E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 5.4269700964E-01 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 -1.0009779603E+01 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00
+ 0.0000000000E+00 0.0000000000E+00 0.0000000000E+00 -5.9335212013E+00
+
+
+
+
+
+ 0.0000000000E+00 3.4389112033E-04 1.3795176944E-03 3.1187222088E-03
+ 5.5811852750E-03 8.7943413872E-03 1.2793263075E-02 1.7620515500E-02
+ 2.3325984077E-02 2.9966678162E-02 3.7606514298E-02 4.6316082873E-02
+ 5.6172402318E-02 6.7258665237E-02 7.9663980979E-02 9.3483119237E-02
+ 1.0881625924E-01 1.2576874898E-01 1.4445087879E-01 1.6497767317E-01
+ 1.8746870460E-01 2.1204793243E-01 2.3884356964E-01 2.6798797939E-01
+ 2.9961760313E-01 3.3387292079E-01 3.7089844300E-01 4.1084273503E-01
+ 4.5385847091E-01 5.0010251473E-01 5.4973602692E-01 6.0292459089E-01
+ 6.5983835663E-01 7.2065219489E-01 7.8554585330E-01 8.5470411744E-01
+ 9.2831695251E-01 1.0065796407E+00 1.0896928824E+00 1.1778628701E+00
+ 1.2713013214E+00 1.3702254591E+00 1.4748579337E+00 1.5854266788E+00
+ 1.7021646917E+00 1.8253097305E+00 1.9551039232E+00 2.0917932785E+00
+ 2.2356270890E+00 2.3868572358E+00 2.5457373845E+00 2.7125220671E+00
+ 2.8874655954E+00 3.0708209769E+00 3.2628385926E+00 3.4637647896E+00
+ 3.6738404978E+00 3.8932994176E+00 4.1223665946E+00 4.3612563135E+00
+ 4.6101704924E+00 4.8692965785E+00 5.1388054603E+00 5.4188497543E+00
+ 5.7095611702E+00 6.0110487523E+00 6.3233968377E+00 6.6466625608E+00
+ 6.9808739508E+00 7.3260279675E+00 7.6820885464E+00 8.0489844433E+00
+ 8.4266075294E+00 8.8148112188E+00 9.2134088447E+00 9.6221722542E+00
+ 1.0040830582E+01 1.0469069219E+01 1.0906528825E+01 1.1352804880E+01
+ 1.1807447208E+01 1.2269959804E+01 1.2739800916E+01 1.3216383378E+01
+ 1.3699075208E+01 1.4187200475E+01 1.4680040435E+01 1.5176834938E+01
+ 1.5676784105E+01 1.6179050276E+01 1.6682760211E+01 1.7187007553E+01
+ 1.7690855528E+01 1.8193339495E+01 1.8693470881E+01 1.9190240329E+01
+ 1.9682620941E+01 2.0169572171E+01 2.0650043695E+01 2.1122979406E+01
+ 2.1587321495E+01 2.2042012628E+01 2.2486005706E+01 2.2918263846E+01
+ 2.3337765296E+01 2.3743507929E+01 2.4134511614E+01 2.4509825584E+01
+ 2.4868534530E+01 2.5209757264E+01 2.5532652372E+01 2.5836416756E+01
+ 2.6120305265E+01 2.6383619006E+01 2.6625711884E+01 2.6845987725E+01
+ 2.7043922799E+01 2.7219048555E+01 2.7370956324E+01 2.7499303644E+01
+ 2.7603821322E+01 2.7684302187E+01 2.7740601221E+01 2.7772655737E+01
+ 2.7780464230E+01 2.7764089558E+01 2.7723671536E+01 2.7659412705E+01
+ 2.7571578925E+01 2.7460505960E+01 2.7326588360E+01 2.7170283101E+01
+ 2.6992104712E+01 2.6792622269E+01 2.6572463362E+01 2.6332296243E+01
+ 2.6072844481E+01 2.5794872811E+01 2.5499177028E+01 2.5186611791E+01
+ 2.4858035305E+01 2.4514354300E+01 2.4156499490E+01 2.3785401668E+01
+ 2.3402052601E+01 2.3007400621E+01 2.2602449777E+01 2.2188185413E+01
+ 2.1765593056E+01 2.1335684366E+01 2.0899410225E+01 2.0457791253E+01
+ 2.0011744433E+01 1.9562252126E+01 1.9110217634E+01 1.8656560829E+01
+ 1.8202160956E+01 1.7747864973E+01 1.7294516851E+01 1.6842883808E+01
+ 1.6393763300E+01 1.5947838995E+01 1.5505851288E+01 1.5068398940E+01
+ 1.4636156001E+01 1.4209637226E+01 1.3789441832E+01 1.3376004441E+01
+ 1.2969840955E+01 1.2571310446E+01 1.2180844888E+01 1.1798727560E+01
+ 1.1425308214E+01 1.1060798430E+01 1.0705463378E+01 1.0359451791E+01
+ 1.0022945321E+01 9.6960354090E+00 9.3788245300E+00 9.0713517530E+00
+ 8.7736470486E+00 8.4857009305E+00 8.2074799071E+00 7.9389283223E+00
+ 7.6799604571E+00 7.4304754095E+00 7.1903481398E+00 6.9594323534E+00
+ 6.7375756076E+00 6.5245909801E+00 6.3203022284E+00 6.1244969580E+00
+ 5.9369699224E+00 5.7575001476E+00 5.5858489756E+00 5.4218023323E+00
+ 5.2650849692E+00 5.1154898576E+00 4.9727415828E+00 4.8366076595E+00
+ 4.7068392942E+00 4.5831695800E+00 4.4653857103E+00 4.3531963212E+00
+ 4.2464020197E+00 4.1447432733E+00 4.0479844694E+00 3.9559232517E+00
+ 3.8682847148E+00 3.7849038902E+00 3.7055385313E+00 3.6299881924E+00
+ 3.5580778663E+00 3.4895650048E+00 3.4243168885E+00 3.3621296234E+00
+ 3.3028309720E+00 3.2462853090E+00 3.1922895201E+00 3.1407360813E+00
+ 3.0914723462E+00 3.0443442494E+00 2.9992569174E+00 2.9560577184E+00
+ 2.9146462595E+00 2.8749275998E+00 2.8367591080E+00 2.8000825181E+00
+ 2.7647951807E+00 2.7307961554E+00 2.6980302113E+00 2.6664018832E+00
+ 2.6358441884E+00 2.6063046183E+00 2.5776968460E+00 2.5499796119E+00
+ 2.5231034211E+00 2.4969930386E+00 2.4716245610E+00 2.4469497874E+00
+ 2.4229132203E+00 2.3994937565E+00 2.3766494246E+00 2.3543395108E+00
+ 2.3325455745E+00 2.3112317681E+00 2.2903680200E+00 2.2699385156E+00
+ 2.2499131547E+00 2.2302692619E+00 2.2109935877E+00 2.1920612367E+00
+ 2.1734545085E+00 2.1551625930E+00 2.1371651869E+00 2.1194478268E+00
+ 2.1020019560E+00 2.0848112507E+00 2.0678632758E+00 2.0511515018E+00
+ 2.0346630159E+00 2.0183865940E+00 2.0023174886E+00 1.9864456941E+00
+ 1.9707606619E+00 1.9552591783E+00 1.9399337072E+00 1.9247740454E+00
+ 1.9097782676E+00 1.8949406574E+00 1.8802519931E+00 1.8657105832E+00
+ 1.8513120625E+00 1.8370493526E+00 1.8229195389E+00 1.8089198134E+00
+ 1.7950449718E+00 1.7812909504E+00 1.7676562316E+00 1.7541372397E+00
+ 1.7407288974E+00 1.7274307165E+00 1.7142400365E+00 1.7011523961E+00
+ 1.6881666458E+00 1.6752811096E+00 1.6624927099E+00 1.6497988687E+00
+ 1.6371989688E+00 1.6246911054E+00 1.6122716738E+00 1.5999406819E+00
+ 1.5876966546E+00 1.5755371480E+00 1.5634606427E+00 1.5514666626E+00
+ 1.5395538317E+00 1.5277193464E+00 1.5159634528E+00 1.5042850702E+00
+ 1.4926824142E+00 1.4811541993E+00 1.4697002663E+00 1.4583196269E+00
+ 1.4470102174E+00 1.4357720177E+00 1.4246044482E+00 1.4135064051E+00
+ 1.4024763504E+00 1.3915145437E+00 1.3806202987E+00 1.3697922980E+00
+ 1.3590299142E+00 1.3483331281E+00 1.3377013351E+00 1.3271330943E+00
+ 1.3166284772E+00 1.3061872400E+00 1.2958088338E+00 1.2854918227E+00
+ 1.2752367268E+00 1.2650431586E+00 1.2549104782E+00 1.2448377251E+00
+ 1.2348252869E+00 1.2248728298E+00 1.2149796717E+00 1.2051451946E+00
+ 1.1953696909E+00 1.1856528734E+00 1.1759940591E+00 1.1663928529E+00
+ 1.1568494898E+00 1.1473637233E+00 1.1379349020E+00 1.1285627508E+00
+ 1.1192474821E+00 1.1099888843E+00 1.1007863647E+00 1.0916396797E+00
+ 1.0825490501E+00 1.0735142942E+00 1.0645349003E+00 1.0556105810E+00
+ 1.0467415922E+00 1.0379277772E+00 1.0291687257E+00 1.0204640416E+00
+ 1.0118140381E+00 1.0032185795E+00 9.9467737533E-01 9.8618986554E-01
+ 9.7775643853E-01 9.6937697586E-01 9.6105131410E-01 9.5277871282E-01
+ 9.4455961926E-01 9.3639393885E-01 9.2828152489E-01 9.2022179650E-01
+ 9.1221489223E-01 9.0426086318E-01 8.9635957661E-01 8.8851063143E-01
+ 8.8071381608E-01 8.7296933802E-01 8.6527707610E-01 8.5763682753E-01
+ 8.5004800011E-01 8.4251096107E-01 8.3502559891E-01 8.2759176583E-01
+ 8.2020894578E-01 8.1287718893E-01 8.0559654827E-01 7.9836688607E-01
+ 7.9118792080E-01 7.8405921898E-01 7.7698104449E-01 7.6995326832E-01
+ 7.6297572859E-01 7.5604789845E-01 7.4916984042E-01 7.4234156612E-01
+ 7.3556292317E-01 7.2883365672E-01 7.2215325948E-01 7.1552199322E-01
+ 7.0893971423E-01 7.0240624899E-01 6.9592115272E-01 6.8948428531E-01
+ 6.8309571972E-01 6.7675529215E-01 6.7046281024E-01 6.6421767739E-01
+ 6.5802005610E-01 6.5186985375E-01 6.4576688880E-01 6.3971089405E-01
+ 6.3370133199E-01 6.2773842580E-01 6.2182200443E-01 6.1595187102E-01
+ 6.1012765194E-01 6.0434900212E-01 5.9861604036E-01 5.9292858151E-01
+ 5.8728641576E-01 5.8168909272E-01 5.7613640459E-01 5.7062839057E-01
+ 5.6516485381E-01 5.5974557393E-01 5.5437005207E-01 5.4903816259E-01
+ 5.4374989172E-01 5.3850503324E-01 5.3330335852E-01 5.2814434740E-01
+ 5.2302790222E-01 5.1795398348E-01 5.1292237787E-01 5.0793285080E-01
+ 5.0298488728E-01 4.9807836448E-01 4.9321324432E-01 4.8838930864E-01
+ 4.8360631903E-01 4.7886379222E-01 4.7416152772E-01 4.6949951555E-01
+ 4.6487753478E-01 4.6029534523E-01 4.5575252240E-01 4.5124873634E-01
+ 4.4678403080E-01 4.4235818403E-01 4.3797095606E-01 4.3362200847E-01
+ 4.2931083189E-01 4.2503754737E-01 4.2080193419E-01 4.1660375439E-01
+ 4.1244275263E-01 4.0831828376E-01 4.0423047668E-01 4.0017914319E-01
+ 3.9616404898E-01 3.9218494337E-01 3.8824131680E-01 3.8433301121E-01
+ 3.8045997532E-01 3.7662198001E-01 3.7281878071E-01 3.6905003394E-01
+ 3.6531524608E-01 3.6161452183E-01 3.5794763858E-01 3.5431435916E-01
+ 3.5071443173E-01 3.4714729389E-01 3.4361291444E-01 3.4011117893E-01
+ 3.3664185872E-01 3.3320471142E-01 3.2979939144E-01 3.2642543061E-01
+ 3.2308292227E-01 3.1977164729E-01 3.1649137362E-01 3.1324185623E-01
+ 3.1002259005E-01 3.0683345168E-01 3.0367437391E-01 3.0054513581E-01
+ 2.9744550427E-01 2.9437523393E-01 2.9133369751E-01 2.8832105257E-01
+ 2.8533709774E-01 2.8238161239E-01 2.7945436447E-01 2.7655501324E-01
+ 2.7368313630E-01 2.7083881389E-01 2.6802183827E-01 2.6523199104E-01
+ 2.6246904305E-01 2.5973258182E-01 2.5702235639E-01 2.5433837095E-01
+ 2.5168042095E-01 2.4904829183E-01 2.4644175899E-01 2.4386036863E-01
+ 2.4130398275E-01 2.3877255665E-01 2.3626589040E-01 2.3378377471E-01
+ 2.3132599089E-01 2.2889207245E-01 2.2648193724E-01 2.2409551909E-01
+ 2.2173262386E-01 2.1939304875E-01 2.1707658215E-01 2.1478277174E-01
+ 2.1251153655E-01 2.1026281549E-01 2.0803642128E-01 2.0583215853E-01
+ 2.0364982371E-01 2.0148900402E-01 1.9934956793E-01 1.9723148450E-01
+ 1.9513457410E-01 1.9305864958E-01 1.9100351618E-01 1.8896882475E-01
+ 1.8695434488E-01 1.8496009866E-01 1.8298591473E-01 1.8103161477E-01
+ 1.7909701342E-01 1.7718184779E-01 1.7528574467E-01 1.7340879910E-01
+ 1.7155084851E-01 1.6971172383E-01 1.6789124948E-01 1.6608924332E-01
+ 1.6430522973E-01 1.6253931462E-01 1.6079137044E-01 1.5906123767E-01
+ 1.5734875078E-01 1.5565373817E-01 1.5397585497E-01 1.5231496675E-01
+ 1.5067106823E-01 1.4904400959E-01 1.4743363546E-01 1.4583978487E-01
+ 1.4426226271E-01 1.4270066299E-01 1.4115511382E-01 1.3962547508E-01
+ 1.3811160157E-01 1.3661334293E-01 1.3513054362E-01 1.3366287969E-01
+ 1.3221024476E-01 1.3077263186E-01 1.2934990581E-01 1.2794192673E-01
+ 1.2654855000E-01 1.2516962620E-01 1.2380473731E-01 1.2245401171E-01
+ 1.2111733422E-01 1.1979457521E-01 1.1848560069E-01 1.1719027230E-01
+ 1.1590837245E-01 1.1463964565E-01 1.1338416644E-01 1.1214181516E-01
+ 1.1091246813E-01 1.0969599770E-01 1.0849227216E-01 1.0730102352E-01
+ 1.0612213454E-01 1.0495561938E-01 1.0380136433E-01 1.0265925202E-01
+ 1.0152916139E-01 1.0041096768E-01 9.9304377801E-02 9.8209360912E-02
+ 9.7125894531E-02 9.6053871134E-02 9.4993179832E-02 9.3943706352E-02
+ 9.2905333024E-02 9.1877764206E-02 9.0861007957E-02 8.9855027513E-02
+ 8.8859721651E-02 8.7874986066E-02 8.6900713354E-02 8.5936793000E-02
+ 8.4982946643E-02 8.4039178732E-02 8.3105458479E-02 8.2181690997E-02
+ 8.1267778580E-02 8.0363620689E-02 7.9469113941E-02 7.8584014840E-02
+ 7.7708286539E-02 7.6841922133E-02
+
+
diff --git a/tests/data/abacus.out/box.raw b/tests/data/abacus.out/box.raw
new file mode 100644
index 000000000..113faa567
--- /dev/null
+++ b/tests/data/abacus.out/box.raw
@@ -0,0 +1,9 @@
+9.500003794601733276e+00 0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 9.500003794601733276e+00 0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 9.500003794601733276e+00
+9.500003794601733276e+00 0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 9.500003794601733276e+00 0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 9.500003794601733276e+00
+9.500003794601733276e+00 0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 9.500003794601733276e+00 0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 9.500003794601733276e+00
+9.706914375293798969e+00 0.000000000000000000e+00 0.000000000000000000e+00 -2.813826031966266683e-01 9.684068716817010980e+00 0.000000000000000000e+00 1.582462665518686029e-01 -1.638176684236652414e-01 9.582973862484221783e+00
+9.706914375293798969e+00 0.000000000000000000e+00 0.000000000000000000e+00 -2.813826031966266683e-01 9.684068716817010980e+00 0.000000000000000000e+00 1.582462665518686029e-01 -1.638176684236652414e-01 9.582973862484221783e+00
+9.706914375293798969e+00 0.000000000000000000e+00 0.000000000000000000e+00 -2.813826031966266683e-01 9.684068716817010980e+00 0.000000000000000000e+00 1.582462665518686029e-01 -1.638176684236652414e-01 9.582973862484221783e+00
+9.270692588887365915e+00 0.000000000000000000e+00 0.000000000000000000e+00 1.282384570089394570e-02 9.562095206948105997e+00 0.000000000000000000e+00 1.695607748098341694e-01 -3.003052827686297777e-02 9.586097959903160159e+00
+9.270692588887365915e+00 0.000000000000000000e+00 0.000000000000000000e+00 1.282384570089394570e-02 9.562095206948105997e+00 0.000000000000000000e+00 1.695607748098341694e-01 -3.003052827686297777e-02 9.586097959903160159e+00
+9.270692588887365915e+00 0.000000000000000000e+00 0.000000000000000000e+00 1.282384570089394570e-02 9.562095206948105997e+00 0.000000000000000000e+00 1.695607748098341694e-01 -3.003052827686297777e-02 9.586097959903160159e+00
diff --git a/tests/data/abacus.out/coord.raw b/tests/data/abacus.out/coord.raw
new file mode 100644
index 000000000..e7cdddd7b
--- /dev/null
+++ b/tests/data/abacus.out/coord.raw
@@ -0,0 +1,9 @@
+5.097445536080835282e+00 3.891296554306815647e+00 3.462257382935012284e+00 3.796296516360798901e+00 4.557085320243889015e+00 4.168354664972580892e+00 5.223520086438995236e+00 5.328267128278273645e+00 4.206763180314156081e+00 5.007081499986584028e+00 3.977917588905994339e+00 5.081172029580683258e+00 4.779784409196943251e+00 4.440311273600644704e+00 4.230028689607135739e+00
+5.103858038642191453e+00 3.880191049870926445e+00 3.446696376719454946e+00 3.775406008016469528e+00 4.559602821249458593e+00 4.167053164452720893e+00 5.232839590161499466e+00 5.347001135761228596e+00 4.206288180124425402e+00 5.011717501838350408e+00 3.968455585126571261e+00 5.098652036562749679e+00 4.779831909215916497e+00 4.440254273577877164e+00 4.230019189603340557e+00
+5.119884545043685620e+00 3.852460538794483913e+00 3.407831861195739442e+00 3.723554987305532915e+00 4.565872823753895915e+00 4.163823163162556185e+00 5.256010099416533521e+00 5.393560654358571682e+00 4.205100679650100481e+00 5.023279006456379925e+00 3.944876575708369693e+00 5.142219053964794284e+00 4.779936409257657282e+00 4.440121273524752610e+00 4.229990689591956787e+00
+5.096427141274351591e+00 3.892434814655956199e+00 3.461810975926975509e+00 3.799155116014967248e+00 4.554677025268077273e+00 4.165565410440091654e+00 5.223901104614204094e+00 5.330327801876574512e+00 4.211142034130066492e+00 5.005414683285621003e+00 3.981651944054248382e+00 5.086652109180486825e+00 4.779872942327282992e+00 4.438974334583333459e+00 4.227730161886026572e+00
+5.103261184602785328e+00 3.880885452800337809e+00 3.445730745785726690e+00 3.777497491778390781e+00 4.557324506181583246e+00 4.164214211125480958e+00 5.232832268549433508e+00 5.348378395685436715e+00 4.210605387593767013e+00 5.009806980159292600e+00 3.972575732728341968e+00 5.103211488014860464e+00 4.780001031169360814e+00 4.438972368771311849e+00 4.227845157572376777e+00
+5.120317329672263718e+00 3.852138687647257420e+00 3.405769744779167496e+00 3.723931089270374528e+00 4.563947804773200723e+00 4.160850587299749215e+00 5.255117341672209008e+00 5.393433560233562574e+00 4.209187107462120103e+00 5.020812710907808452e+00 3.949719756157049844e+00 5.144657849970104557e+00 4.780287402210577241e+00 4.438957933990210769e+00 4.228123063814388516e+00
+5.092902177223409765e+00 3.892432334041243447e+00 3.458357388798343202e+00 3.803614275703672387e+00 4.550054118936396108e+00 4.167057610973984083e+00 5.219810487586725500e+00 5.333212587629732937e+00 4.208594173434244468e+00 5.008144400245305050e+00 3.980022803515795626e+00 5.084715596479592925e+00 4.787731765421213481e+00 4.439473528109648903e+00 4.223443039174134661e+00
+5.100124249224302631e+00 3.880379635300070795e+00 3.441466684192993952e+00 3.782477175789192625e+00 4.552601510199592028e+00 4.165821004337156630e+00 5.229095946058231803e+00 5.351937001907162816e+00 4.208009421458690724e+00 5.012598716327302917e+00 3.971175194607369896e+00 5.100829827150191065e+00 4.787754168232674523e+00 4.439444151121876736e+00 4.223663519427212520e+00
+5.118183394455877000e+00 3.850590682409233079e+00 3.399700055381695840e+00 3.730032485145450494e+00 4.558979655559638466e+00 4.162695936402228014e+00 5.252297961232436307e+00 5.398442395905188818e+00 4.206437301393266104e+00 5.023908229323359897e+00 3.948874057084713840e+00 5.141254402247102284e+00 4.787753781670383901e+00 4.439366062742222674e+00 4.224171582619086429e+00
diff --git a/tests/data/abacus.out/energy.raw b/tests/data/abacus.out/energy.raw
new file mode 100644
index 000000000..d6e8aa5d7
--- /dev/null
+++ b/tests/data/abacus.out/energy.raw
@@ -0,0 +1,9 @@
+-2.191299378191779965e+02
+-2.194405277004599952e+02
+-2.198624336150280101e+02
+-2.191326527145239993e+02
+-2.194421046524030032e+02
+-2.198623721410370138e+02
+-2.191187282189270036e+02
+-2.194341917153120107e+02
+-2.198612731451000002e+02
diff --git a/tests/data/abacus.out/force.raw b/tests/data/abacus.out/force.raw
new file mode 100644
index 000000000..4144adc07
--- /dev/null
+++ b/tests/data/abacus.out/force.raw
@@ -0,0 +1,9 @@
+1.340516999999999959e+00 -2.319939999999999891e+00 -3.252981999999999818e+00 -4.366520999999999653e+00 5.253839999999999621e-01 -2.713240000000000096e-01 1.946277000000000035e+00 3.914839999999999876e+00 -1.002760000000000040e-01 9.686479999999999535e-01 -1.975710000000000077e+00 3.652965000000000018e+00 1.110799999999999982e-01 -1.445730000000000071e-01 -2.838299999999999851e-02
+1.004871000000000070e+00 -1.739881000000000011e+00 -2.441946999999999868e+00 -3.252618000000000009e+00 3.932160000000000100e-01 -2.014640000000000042e-01 1.449497000000000035e+00 2.920978999999999992e+00 -7.423100000000000531e-02 7.239849999999999897e-01 -1.478039000000000103e+00 2.737074999999999925e+00 7.426499999999999768e-02 -9.627499999999999947e-02 -1.943299999999999889e-02
+3.081909999999999927e-01 -5.357279999999999820e-01 -7.577249999999999819e-01 -9.752370000000000205e-01 1.223179999999999962e-01 -5.883499999999999841e-02 4.313279999999999892e-01 8.821980000000000377e-01 -2.097399999999999959e-02 2.183859999999999968e-01 -4.492929999999999979e-01 8.426649999999999974e-01 1.733200000000000018e-02 -1.949499999999999844e-02 -5.131000000000000144e-03
+1.427623000000000086e+00 -2.413518999999999970e+00 -3.360831999999999820e+00 -4.528626000000000040e+00 5.543489999999999807e-01 -2.825799999999999979e-01 1.865701999999999972e+00 3.772834000000000021e+00 -1.115990000000000038e-01 9.166830000000000256e-01 -1.897685000000000066e+00 3.461780000000000079e+00 3.186169999999999836e-01 -1.597900000000000015e-02 2.932310000000000194e-01
+1.068959999999999910e+00 -1.799541999999999975e+00 -2.503127999999999798e+00 -3.353024000000000004e+00 4.141170000000000129e-01 -2.095920000000000005e-01 1.397261000000000086e+00 2.832427000000000028e+00 -9.248800000000000077e-02 6.915970000000000173e-01 -1.440531999999999924e+00 2.608916999999999931e+00 1.952059999999999906e-01 -6.470000000000000057e-03 1.962909999999999933e-01
+3.321569999999999800e-01 -5.401329999999999742e-01 -7.446800000000000086e-01 -9.782939999999999969e-01 1.297010000000000107e-01 -6.194899999999999712e-02 4.260439999999999783e-01 8.800499999999999989e-01 -5.013700000000000101e-02 2.190239999999999965e-01 -4.777859999999999885e-01 8.186620000000000008e-01 1.069000000000000072e-03 8.167999999999999913e-03 3.810399999999999898e-02
+1.508321999999999941e+00 -2.517781999999999965e+00 -3.530746999999999858e+00 -4.418461999999999890e+00 5.307359999999999856e-01 -2.590069999999999872e-01 1.940423000000000009e+00 3.914120000000000044e+00 -1.216489999999999932e-01 9.302350000000000341e-01 -1.848592999999999931e+00 3.369225999999999832e+00 3.948200000000000320e-02 -7.847999999999999421e-02 5.421770000000000200e-01
+1.133156999999999970e+00 -1.856662000000000035e+00 -2.608308000000000071e+00 -3.288841000000000125e+00 4.018760000000000110e-01 -1.963060000000000083e-01 1.454909000000000008e+00 2.915560000000000151e+00 -1.033980000000000038e-01 7.166339999999999932e-01 -1.407418999999999976e+00 2.547271999999999981e+00 -1.585999999999999910e-02 -5.335600000000000065e-02 3.607400000000000051e-01
+3.706369999999999942e-01 -5.229000000000000314e-01 -7.455789999999999917e-01 -9.850360000000000227e-01 1.368810000000000027e-01 -6.710800000000000098e-02 4.571290000000000076e-01 8.672569999999999446e-01 -6.185999999999999832e-02 2.617059999999999942e-01 -4.714160000000000017e-01 8.086250000000000382e-01 -1.044360000000000011e-01 -9.821999999999999134e-03 6.592199999999999449e-02
diff --git a/tests/data/abacus.out/type.raw b/tests/data/abacus.out/type.raw
new file mode 100644
index 000000000..0b21c0d0e
--- /dev/null
+++ b/tests/data/abacus.out/type.raw
@@ -0,0 +1,5 @@
+0
+0
+0
+0
+1
diff --git a/tests/data/abacus.out/type_map.raw b/tests/data/abacus.out/type_map.raw
new file mode 100644
index 000000000..35025b8b1
--- /dev/null
+++ b/tests/data/abacus.out/type_map.raw
@@ -0,0 +1,2 @@
+H
+C
diff --git a/tests/data/abacus.out/virial.raw b/tests/data/abacus.out/virial.raw
new file mode 100644
index 000000000..81d860769
--- /dev/null
+++ b/tests/data/abacus.out/virial.raw
@@ -0,0 +1,9 @@
+5.795858174693855780e+00 3.443092965380536302e-02 1.929418518002443822e-02 3.443092965380536302e-02 5.716638835032358479e+00 -2.389685573149830794e-02 1.929418518002443822e-02 -2.389685573149830794e-02 5.617522216398079138e+00
+4.408988076950304702e+00 2.176542487386309843e-02 1.214803211126708540e-02 2.176542487386309843e-02 4.359248625442528002e+00 -1.506503678236161513e-02 1.214803211126708540e-02 -1.506503678236161513e-02 4.296671356642591810e+00
+1.386467678460361785e+00 -6.721258240496656147e-04 -3.665654374793160769e-04 -6.721258240496656147e-04 1.386947691887250755e+00 5.415536098234567707e-04 -3.665654374793160769e-04 5.415536098234567707e-04 1.389181332961759718e+00
+5.920273248601972682e+00 -6.039738868480488271e-02 -5.548276701405261552e-02 -6.039738868480488271e-02 5.605862281032128358e+00 1.215189545474988780e-01 -5.548276701405261552e-02 1.215189545474988780e-01 5.558883535614017823e+00
+4.490640109820734693e+00 -4.527006960785832923e-02 -4.134669356180990796e-02 -4.527006960785832923e-02 4.293001025437428453e+00 7.126623109612076346e-02 -4.134669356180990796e-02 7.126623109612076346e-02 4.248516980437247348e+00
+1.394114722102968162e+00 -1.766924844126081806e-02 -1.462129465140290206e-02 -1.766924844126081806e-02 1.399656251812032570e+00 -1.912491203874137902e-02 -1.462129465140290206e-02 -1.912491203874137902e-02 1.360744660235811310e+00
+5.844498499100296840e+00 -6.853191054575857519e-03 -1.324669162954480450e-01 -6.853191054575857519e-03 5.775330648915621978e+00 2.461468284624128700e-01 -1.324669162954480450e-01 2.461468284624128700e-01 5.611345206312754463e+00
+4.456000939126254501e+00 -1.359924298733263329e-02 -9.024508563996384847e-02 -1.359924298733263329e-02 4.394864279944473040e+00 1.488666274174575976e-01 -9.024508563996384847e-02 1.488666274174575976e-01 4.279539092748385620e+00
+1.432096287462409911e+00 -2.596479489866933624e-02 -1.308794539607722671e-02 -2.596479489866933624e-02 1.380061149718328606e+00 -2.498250948476371872e-02 -1.308794539607722671e-02 -2.498250948476371872e-02 1.354370036932820875e+00
diff --git a/tests/data/ch4.json b/tests/data/ch4.json
new file mode 100644
index 000000000..7f3a74933
--- /dev/null
+++ b/tests/data/ch4.json
@@ -0,0 +1,26 @@
+{
+ "init_fp_style": "ABACUS",
+ "stages": [1, 2, 3, 4],
+ "super_cell": [1, 1, 1],
+ "_comment": "if from_poscar = true, the cell_type and super_cell keys are actually useless",
+ "cell_type": "fcc",
+ "elements": ["H","C"],
+ "atom_masses": [1, 12],
+ "_comment": "if from_poscar = false, you have to set atom_masse.",
+ "out_dir": "./",
+ "from_poscar": true,
+ "from_poscar_path": "./STRU",
+ "potcars": ["./H_ONCV_PBE-1.0.upf", "./C_ONCV_PBE-1.0.upf"],
+ "relax_incar": "./INPUT",
+ "relax_kspacing": 10,
+ "md_incar" : "./INPUT.md",
+ "md_kspacing": 10,
+ "scale": [0.95],
+ "skip_relax": false,
+ "pert_numb": 2,
+ "md_nstep" : 3,
+ "pert_box": 0.03,
+ "pert_atom": 0.01,
+ "coll_ndata": 10,
+ "_comment": "that's all"
+}
diff --git a/tests/data/context.py b/tests/data/context.py
index 5d99787a5..b1d625352 100644
--- a/tests/data/context.py
+++ b/tests/data/context.py
@@ -3,6 +3,6 @@
from dpgen.data.gen import *
param_file = 'al.json'
-
+abacus_param_file = 'ch4.json'
def setUpModule():
os.chdir(os.path.abspath(os.path.dirname(__file__)))
diff --git a/tests/data/context_bulk.py b/tests/data/context_bulk.py
index 9696a6b9b..1a46b37bd 100644
--- a/tests/data/context_bulk.py
+++ b/tests/data/context_bulk.py
@@ -3,4 +3,4 @@
from dpgen.data.gen import *
param_file = 'alloy.json'
-
+abacus_param_file = 'CuW.json'
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/INPUT b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/INPUT
new file mode 100644
index 000000000..c3181c397
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/INPUT
@@ -0,0 +1,20 @@
+INPUT_PARAMETERS
+
+calculation md
+atom_file STRU
+kpoint_file KPT
+pseudo_dir ./
+ntype 2
+symmetry 1
+ecutwfc 90
+
+npool 1
+
+mixing_type pulay
+mixing_beta 0.4
+
+nstep 3
+force_thr_ev 0.02
+#move_method cg
+out_stru 0
+stress 1
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/INPUT b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/INPUT
new file mode 100644
index 000000000..63bd0ed40
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/INPUT
@@ -0,0 +1,263 @@
+INPUT_PARAMETERS
+#Parameters (1.General)
+suffix ABACUS #the name of main output directory
+latname test #the name of lattice name
+atom_file STRU #the filename of file containing atom positions
+kpoint_file KPT #the name of file containing k points
+pseudo_dir .// #the directory containing pseudo files
+orbital_dir #the directory containing orbital files
+pseudo_type auto #the type pseudo files
+pseudo_rcut 15 #cut-off radius for radial integration
+renormwithmesh 0 #0: use our own mesh to do radial renormalization; 1: use mesh as in QE
+lmaxmax 2 #maximum of l channels used
+dft_functional none #exchange correlation functional
+calculation md #test; scf; relax; nscf; ienvelope; istate;
+ntype 2 #atom species number
+nspin 1 #1: single spin; 2: up and down spin; 4: noncollinear spin
+nbands 0 #number of bands
+nbands_sto 0 #number of stochastic bands
+nbands_istate 5 #number of bands around Fermi level for istate calulation
+nche_sto 0 #number of orders for Chebyshev expansion in stochastic DFT
+symmetry 0 #turn symmetry on or off
+set_vel 0 #read velocity from STRU or not
+symmetry_prec 1e-05 #accuracy for symmetry
+nelec 0 #input number of electrons
+tot_magnetization 0 #total magnetization of the system
+
+#Parameters (2.PW)
+ecutwfc 90 ##energy cutoff for wave functions
+diago_cg_maxiter 50 #max iteration number for cg
+diago_cg_prec 1 #diago_cg_prec
+ethr 0.01 #threshold for eigenvalues is cg electron iterations
+dr2 1e-09 #charge density error
+start_wfc atomic #start wave functions are from 'atomic' or 'file'
+start_charge atomic #start charge is from 'atomic' or file
+charge_extrap atomic #atomic; first-order; second-order; dm:coefficients of SIA
+out_charge 0 #>0 output charge density for selected electron steps
+out_potential 0 #output realspace potential
+out_wf 0 #output wave functions
+out_dos 0 #output energy and dos
+out_band 0 #output energy and band structure
+restart_save 0 #print to disk every step for restart
+restart_load 0 #restart from disk
+read_file_dir auto #directory of files for reading
+nx 0 #number of points along x axis for FFT grid
+ny 0 #number of points along y axis for FFT grid
+nz 0 #number of points along z axis for FFT grid
+cell_factor 1.2 #used in the construction of the pseudopotential tables
+
+#Parameters (3.Relaxation)
+ks_solver cg #cg; dav; lapack; genelpa; hpseps; scalapack_gvx
+niter 40 ##number of electron iterations
+force_set 0 #output the force_set or not
+nstep 3 #number of ion iteration steps
+out_stru 0 #output the structure files after each ion step
+force_thr 0.00077787 #force threshold, unit: Ry/Bohr
+force_thr_ev 0.02 #force threshold, unit: eV/Angstrom
+force_thr_ev2 0 #force invalid threshold, unit: eV/Angstrom
+cg_threshold 0.5 #threshold for switching from cg to bfgs, unit: eV/Angstrom
+stress_thr 0.01 #stress threshold
+press1 0 #target pressure, unit: KBar
+press2 0 #target pressure, unit: KBar
+press3 0 #target pressure, unit: KBar
+bfgs_w1 0.01 #wolfe condition 1 for bfgs
+bfgs_w2 0.5 #wolfe condition 2 for bfgs
+trust_radius_max 0.8 #maximal trust radius, unit: Bohr
+trust_radius_min 1e-05 #minimal trust radius, unit: Bohr
+trust_radius_ini 0.5 #initial trust radius, unit: Bohr
+stress 1 #calculate the stress or not
+fixed_axes None #which axes are fixed
+move_method cg #bfgs; sd; cg; cg_bfgs;
+out_level m #ie(for electrons); i(for ions);
+out_dm 0 #>0 output density matrix
+out_descriptor 0 #>0 compute descriptor for deepks
+lmax_descriptor 2 #>0 lmax used in descriptor for deepks
+
+#Parameters (4.LCAO)
+basis_type pw #PW; LCAO in pw; LCAO
+new_dm 1 #Type of density matrix; 0: old 1: new
+search_radius -1 #input search radius (Bohr)
+search_pbc 1 #input periodic boundary condition
+lcao_ecut 0 #energy cutoff for LCAO
+lcao_dk 0.01 #delta k for 1D integration in LCAO
+lcao_dr 0.01 #delta r for 1D integration in LCAO
+lcao_rmax 30 #max R for 1D two-center integration table
+out_hs 0 #output H and S matrix
+out_hs2 0 #output H(R) and S(R) matrix
+out_r 0 #output r(R) matrix
+out_lowf 0 #ouput LCAO wave functions
+bx 1 #division of an element grid in FFT grid along x
+by 1 #division of an element grid in FFT grid along y
+bz 1 #division of an element grid in FFT grid along z
+
+#Parameters (5.Smearing)
+smearing fixed #type of smearing: gauss; fd; fixed; mp; mp2; mv
+sigma 0.01 #energy range for smearing
+
+#Parameters (6.Charge Mixing)
+mixing_type pulay #plain; kerker; pulay; pulay-kerker; broyden
+mixing_beta 0.4 #mixing parameter: 0 means no new charge
+mixing_ndim 8 #mixing dimension in pulay
+mixing_gg0 0 #mixing parameter in kerker
+
+#Parameters (7.DOS)
+dos_emin_ev -15 #minimal range for dos
+dos_emax_ev 15 #maximal range for dos
+dos_edelta_ev 0.01 #delta energy for dos
+dos_scale 0.01 #scale dos range by
+dos_sigma 0.07 #gauss b coefficeinet(default=0.07)
+
+#Parameters (8.Technique)
+gamma_only 0 #gamma only, only used in LCAO basis
+diago_proc 8 #number of proc used to diago
+npool 1 #number of pools for k points, pw only
+mem_saver 0 #memory saver for many k points used
+printe 100 #print band energy for selectively ionic steps
+
+#Parameters (9.SIAO)
+selinv_npole 40 #number of selected poles
+selinv_temp 2000 #temperature for Fermi-Dirac distribution
+selinv_gap 0 #supposed gap in the calculation
+selinv_deltae 2 #expected energy range
+selinv_mu -1 #chosen mu as Fermi energy
+selinv_threshold 0.001 #threshold for calculated electron number
+selinv_niter 50 #max number of steps to update mu
+
+#Parameters (10.Molecular dynamics)
+md_mdtype 1 #choose ensemble
+md_potential FP #choose potential
+md_dt 1 #time step
+mnhc 4 #number of Nose-Hoover chains
+md_qmass 1 #mass of thermostat
+md_tfirst 0 #temperature first
+md_tlast 0 #temperature last
+md_dumpmdfred 1 #The period to dump MD information for monitoring and restarting MD
+md_mdoutpath mdoutput #output path of md
+md_rstmd 0 #whether restart
+md_fixtemperature 1 #period to change temperature
+md_ediff 0.0001 #parameter for constraining total energy change
+md_ediffg 0.001 #parameter for constraining max force change
+NVT_tau 0 #parameter for adjust effect of thermostat
+NVT_control 1 #choose which thermostat used in NVT ensemble
+rcut_lj 8.5 #cutoff radius of LJ potential
+epsilon_lj 0.01032 #the value of epsilon for LJ potential
+sigma_lj 3.405 #the value of sigma for LJ potential
+
+#Parameters (11.Efield)
+efield 0 #add electric field
+edir 1 #add electric field
+emaxpos 0.5 #maximal position of efield [0,1)
+eopreg 0.1 #where sawlike potential decrease
+eamp 0.001 #amplitute of the efield, unit is a.u.
+eamp_v 0.05144 #amplitute of the efield, unit is V/A
+
+#Parameters (12.Test)
+out_alllog 0 #output information for each processor, when parallel
+nurse 0 #for coders
+colour 0 #for coders, make their live colourful
+t_in_h 1 #calculate the kinetic energy or not
+vl_in_h 1 #calculate the local potential or not
+vnl_in_h 1 #calculate the nonlocal potential or not
+vh_in_h 1 #calculate the hartree potential or not
+vxc_in_h 1 #calculate the xc potential or not
+vion_in_h 1 #calculate the local ionic potential or not
+test_force 0 #test the force
+test_stress 0 #test the force
+
+#Parameters (13.Other Methods)
+mlwf_flag 0 #turn MLWF on or off
+opt_epsilon2 0 #calculate the dielectic function
+opt_nbands 0 #number of bands for optical calculation
+
+#Parameters (14.VdW Correction)
+vdw_method none #the method of calculating vdw (none ; d2 ; d3_0 ; d3_bj
+vdw_s6 default #scale parameter of d2/d3_0/d3_bj
+vdw_s8 default #scale parameter of d3_0/d3_bj
+vdw_a1 default #damping parameter of d3_0/d3_bj
+vdw_a2 default #damping parameter of d3_bj
+vdw_d 20 #damping parameter of d2
+vdw_abc 0 #third-order term?
+vdw_C6_file default #filename of C6
+vdw_C6_unit Jnm6/mol #unit of C6, Jnm6/mol or eVA6
+vdw_R0_file default #filename of R0
+vdw_R0_unit A #unit of R0, A or Bohr
+vdw_model radius #expression model of periodic structure, radius or period
+vdw_radius default #radius cutoff for periodic structure
+vdw_radius_unit Bohr #unit of radius cutoff for periodic structure
+vdw_cn_thr 40 #radius cutoff for cn
+vdw_cn_thr_unit Bohr #unit of cn_thr, Bohr or Angstrom
+vdw_period 3 3 3 #periods of periodic structure
+
+#Parameters (15.spectrum)
+spectral_type None #the type of the calculated spectrum
+spectral_method 0 #0: tddft(linear response)
+kernel_type rpa #the kernel type: rpa, tdlda ...
+eels_method 0 #0: hilbert_transform method; 1: standard method
+absorption_method 0 #0: vasp's method 1: pwscf's method
+system bulk #the calculate system
+eta 0.05 #eta(Ry)
+domega 0.01 #domega(Ry)
+nomega 300 #nomega
+ecut_chi 1 #the dimension of chi matrix
+q_start 0.1 0.1 0.1 #the position of the first q point in direct coordinate
+q_direction 1 0 0 #the q direction
+nq 1 #the total number of qpoints for calculation
+out_epsilon 1 #output epsilon or not
+out_chi 0 #output chi or not
+out_chi0 0 #output chi0 or not
+fermi_level 0 #the change of the fermi_level(Ry)
+coulomb_cutoff 0 # turn on the coulomb_cutoff or not
+kmesh_interpolation 0 #calculting
+qcar 0 0 0 #(unit: 2PI/lat0)
+ocp 0 #change occupation or not
+ocp_set none #set occupation
+lcao_box 10 10 10 #the scale for searching the existence of the overlap
+ mulliken 0 # mulliken charge or not
+intrasmear 0 #Eta
+shift 0 #shift
+metalcalc 0 #metal or not
+eps_degauss 0.01 #degauss in calculating epsilon0
+noncolin 0 #using non-collinear-spin
+lspinorb 0 #consider the spin-orbit interaction
+
+#Parameters (17.exx)
+exx_hybrid_type no #no, hf, pbe0, hse or opt_orb
+exx_hybrid_alpha 0.25 #
+exx_hse_omega 0.11 #
+exx_separate_loop 1 #0 or 1
+exx_hybrid_step 100 #
+exx_lambda 0.3 #
+exx_pca_threshold 0 #
+exx_c_threshold 0 #
+exx_v_threshold 0 #
+exx_dm_threshold 0 #
+exx_schwarz_threshold0 #
+exx_cauchy_threshold0 #
+exx_ccp_threshold 1e-08 #
+exx_ccp_rmesh_times 10 #
+exx_distribute_type htime #htime or kmeans1 or kmeans2
+exx_opt_orb_lmax 0 #
+exx_opt_orb_ecut 0 #
+exx_opt_orb_tolerence0 #
+
+#Parameters (17.tddft)
+tddft 0 #calculate tddft or not
+td_dr2 1e-09 #threshold for electronic iteration of tddft
+td_dt 0.02 #time of ion step
+td_force_dt 0.02 #time of force change
+td_val_elec_01 1 #td_val_elec_01
+td_val_elec_02 1 #td_val_elec_02
+td_val_elec_03 1 #td_val_elec_03
+td_vext 0 #add extern potential or not
+td_vext_dire 1 #extern potential direction
+td_timescale 0.5 #extern potential td_timescale
+td_vexttype 1 #extern potential type
+td_vextout 0 #output extern potential or not
+td_dipoleout 0 #output dipole or not
+
+#Parameters (18.berry_wannier)
+berry_phase 0 #calculate berry phase or not
+gdir 3 #calculate the polarization in the direction of the lattice std::vector
+towannier90 0 #use wannier90 code interface or not
+nnkpfile seedname.nnkp #the wannier90 code nnkp file name
+wannier_spin up #calculate spin in wannier90 code interface
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/STRU_MD b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/STRU_MD
new file mode 100644
index 000000000..ab99de324
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/STRU_MD
@@ -0,0 +1,27 @@
+ATOMIC_SPECIES
+H 1.008 H_ONCV_PBE-1.0.upf
+C 12.01 C_ONCV_PBE-1.0.upf
+
+LATTICE_CONSTANT
+1.88972612546
+
+LATTICE_VECTORS
+9.50000379042 0 0 #latvec1
+0 9.50000379042 0 #latvec2
+0 0 9.50000379042 #latvec3
+
+ATOMIC_POSITIONS
+Direct
+
+H #label
+0 #magnetism
+4 #number of atoms
+0.540930980325 0.402075031383 0.353895874486 1 1 1 0 0 0
+0.385586980814 0.481402417362 0.437898545951 1 1 1 0 0 0
+0.556131217776 0.57347946396 0.442495090138 1 1 1 0 0 0
+0.530202220323 0.412321251956 0.546677526283 1 1 1 0 0 0
+
+C #label
+0 #magnetism
+1 #number of atoms
+0.503163091902 0.467364749224 0.445258850036 1 1 1 0 0 0
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/STRU_READIN_ADJUST.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/STRU_READIN_ADJUST.cif
new file mode 100644
index 000000000..779ef9f3b
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/STRU_READIN_ADJUST.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.5
+_cell_length_b 9.5
+_cell_length_c 9.5
+_cell_angle_alpha 90
+_cell_angle_beta 90
+_cell_angle_gamma 90
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.536573 0.40961 0.364448
+H 0.39961 0.479693 0.438774
+H 0.549844 0.56087 0.442817
+H 0.527061 0.418728 0.53486
+C 0.503135 0.467401 0.445266
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/md_pos_1.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/md_pos_1.cif
new file mode 100644
index 000000000..e09204a1c
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/md_pos_1.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.5
+_cell_length_b 9.5
+_cell_length_c 9.5
+_cell_angle_alpha 90
+_cell_angle_beta 90
+_cell_angle_gamma 90
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.537248 0.408441 0.36281
+H 0.397411 0.479958 0.438637
+H 0.550825 0.562842 0.442767
+H 0.527549 0.417732 0.5367
+C 0.50314 0.467395 0.445265
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/md_pos_2.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/md_pos_2.cif
new file mode 100644
index 000000000..99311ee37
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/md_pos_2.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.5
+_cell_length_b 9.5
+_cell_length_c 9.5
+_cell_angle_alpha 90
+_cell_angle_beta 90
+_cell_angle_gamma 90
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.538935 0.405522 0.358719
+H 0.391953 0.480618 0.438297
+H 0.553264 0.567743 0.442642
+H 0.528766 0.41525 0.541286
+C 0.503151 0.467381 0.445262
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/md_pos_3.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/md_pos_3.cif
new file mode 100644
index 000000000..fde6898f6
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/md_pos_3.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.5
+_cell_length_b 9.5
+_cell_length_c 9.5
+_cell_angle_alpha 90
+_cell_angle_beta 90
+_cell_angle_gamma 90
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.540931 0.402075 0.353896
+H 0.385587 0.481402 0.437899
+H 0.556131 0.573479 0.442495
+H 0.530202 0.412321 0.546678
+C 0.503163 0.467365 0.445259
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/running_md.log b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/running_md.log
new file mode 100644
index 000000000..34c025fe5
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/OUT.ABACUS/running_md.log
@@ -0,0 +1,712 @@
+
+ WELCOME TO ABACUS
+
+ 'Atomic-orbital Based Ab-initio Computation at UStc'
+
+ Website: http://abacus.ustc.edu.cn/
+
+ Version: Parallel, in development
+ Processor Number is 8
+ Start Time is Fri Nov 12 18:15:13 2021
+
+ ------------------------------------------------------------------------------------
+
+ READING GENERAL INFORMATION
+ global_out_dir = OUT.ABACUS/
+ global_in_card = INPUT
+ pseudo_dir =
+ orbital_dir =
+ pseudo_type = auto
+ DRANK = 1
+ DSIZE = 8
+ DCOLOR = 1
+ GRANK = 1
+ GSIZE = 1
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Reading atom information in unitcell: |
+ | From the input file and the structure file we know the number of |
+ | different elments in this unitcell, then we list the detail |
+ | information for each element, especially the zeta and polar atomic |
+ | orbital number for each element. The total atom number is counted. |
+ | We calculate the nearest atom distance for each atom and show the |
+ | Cartesian and Direct coordinates for each atom. We list the file |
+ | address for atomic orbitals. The volume and the lattice vectors |
+ | in real and reciprocal space is also shown. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+ READING UNITCELL INFORMATION
+ ntype = 2
+ atom label for species 1 = H
+ atom label for species 2 = C
+ lattice constant (Bohr) = 1.88973
+ lattice constant (Angstrom) = 1
+
+ READING ATOM TYPE 1
+ atom label = H
+ L=0, number of zeta = 1
+ L=1, number of zeta = 1
+ L=2, number of zeta = 1
+ number of atom for this type = 4
+ start magnetization = FALSE
+ start magnetization = FALSE
+ start magnetization = FALSE
+ start magnetization = FALSE
+
+ READING ATOM TYPE 2
+ atom label = C
+ L=0, number of zeta = 1
+ L=1, number of zeta = 1
+ L=2, number of zeta = 1
+ number of atom for this type = 1
+ start magnetization = FALSE
+
+ TOTAL ATOM NUMBER = 5
+
+ CARTESIAN COORDINATES ( UNIT = 1.88973 Bohr ).
+ atom x y z mag vx vy vz
+ tauc_H1 5.09744437597 3.89129339419 3.4622612337 0 0 0 0
+ tauc_H2 3.79629251291 4.55708480448 4.16835321433 0 0 0 0
+ tauc_H3 5.2235234109 5.32826990334 4.20676661344 0 0 0 0
+ tauc_H4 5.00707710352 3.97791420915 5.08117016892 0 0 0 0
+ tauc_C1 4.77978417423 4.4403114594 4.23003031273 0 0 0 0
+
+
+ Volume (Bohr^3) = 5785.86022047
+ Volume (A^3) = 857.37500227
+
+ Lattice vectors: (Cartesian coordinate: in unit of a_0)
+ +9.50000379042 +0 +0
+ +0 +9.50000379042 +0
+ +0 +0 +9.50000379042
+ Reciprocal vectors: (Cartesian coordinate: in unit of 2 pi/a_0)
+ +0.105263115896 +0 +0
+ +0 +0.105263115896 +0
+ +0 +0 +0.105263115896
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Reading pseudopotentials files: |
+ | The pseudopotential file is in UPF format. The 'NC' indicates that |
+ | the type of pseudopotential is 'norm conserving'. Functional of |
+ | exchange and correlation is decided by 4 given parameters in UPF |
+ | file. We also read in the 'core correction' if there exists. |
+ | Also we can read the valence electrons number and the maximal |
+ | angular momentum used in this pseudopotential. We also read in the |
+ | trail wave function, trail atomic density and local-pseudopotential|
+ | on logrithmic grid. The non-local pseudopotential projector is also|
+ | read in if there is any. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+ PAO radial cut off (Bohr) = 15
+
+ Read in pseudopotential file is H_ONCV_PBE-1.0.upf
+ pseudopotential type = NC
+ functional Ex = PBE
+ functional Ec =
+ functional GCEx =
+ functional GCEc =
+ nonlocal core correction = 0
+ valence electrons = 1
+ lmax = 0
+ number of zeta = 0
+ number of projectors = 2
+ L of projector = 0
+ L of projector = 0
+ PAO radial cut off (Bohr) = 15
+
+ Read in pseudopotential file is C_ONCV_PBE-1.0.upf
+ pseudopotential type = NC
+ functional Ex = PBE
+ functional Ec =
+ functional GCEx =
+ functional GCEc =
+ nonlocal core correction = 0
+ valence electrons = 4
+ lmax = 1
+ number of zeta = 0
+ number of projectors = 4
+ L of projector = 0
+ L of projector = 0
+ L of projector = 1
+ L of projector = 1
+ initial pseudo atomic orbital number = 0
+ NLOCAL = 45
+
+ SETUP THE ELECTRONS NUMBER
+ electron number of element H = 1
+ total electron number of element H = 4
+ electron number of element C = 4
+ total electron number of element C = 4
+ occupied bands = 4
+ NBANDS = 14
+ DONE : SETUP UNITCELL Time : 0.086291129759 (SEC)
+
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Setup K-points |
+ | We setup the k-points according to input parameters. |
+ | The reduced k-points are set according to symmetry operations. |
+ | We treat the spin as another set of k-points. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+
+ SETUP K-POINTS
+ nspin = 1
+ Input type of k points = Monkhorst-Pack(Gamma)
+ nkstot = 1
+
+ KPOINTS DIRECT_X DIRECT_Y DIRECT_Z WEIGHT
+ 1 0 0 0 1
+
+ k-point number in this process = 1
+ minimum distributed K point number = 1
+
+ KPOINTS CARTESIAN_X CARTESIAN_Y CARTESIAN_Z WEIGHT
+ 1 0 0 0 2
+
+ KPOINTS DIRECT_X DIRECT_Y DIRECT_Z WEIGHT
+ 1 0 0 0 2
+ DONE : INIT K-POINTS Time : 0.0878850566805 (SEC)
+
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Setup plane waves: |
+ | Use the energy cutoff and the lattice vectors to generate the |
+ | dimensions of FFT grid. The number of FFT grid on each processor |
+ | is 'nrxx'. The number of plane wave basis in reciprocal space is |
+ | different for charege/potential and wave functions. We also set |
+ | the 'sticks' for the parallel of FFT. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+
+ SETUP THE PLANE WAVE BASIS
+ energy cutoff for wavefunc (unit:Ry) = 90
+ [fft grid for wave functions] = 120, 120, 120
+ [fft grid for charge/potential] = 120, 120, 120
+ [fft grid division] = 1, 1, 1
+ [big fft grid for charge/potential] = 120, 120, 120
+ nbxx = 216000
+ nrxx = 216000
+
+ SETUP PLANE WAVES FOR CHARGE/POTENTIAL
+ number of plane waves = 667317
+ number of sticks = 9249
+
+ SETUP PLANE WAVES FOR WAVE FUNCTIONS
+ number of plane waves = 83599
+ number of sticks = 2313
+
+ PARALLEL PW FOR CHARGE/POTENTIAL
+ PROC COLUMNS(POT) PW
+ 1 1155 83417
+ 2 1157 83415
+ 3 1157 83415
+ 4 1156 83414
+ 5 1156 83414
+ 6 1156 83414
+ 7 1156 83414
+ 8 1156 83414
+ --------------- sum -------------------
+ 8 9249 667317
+
+ PARALLEL PW FOR WAVE FUNCTIONS
+ PROC COLUMNS(W) PW
+ 1 289 10449
+ 2 289 10453
+ 3 290 10452
+ 4 287 10451
+ 5 293 10449
+ 6 290 10448
+ 7 288 10448
+ 8 287 10449
+ --------------- sum -------------------
+ 8 2313 83599
+
+ SETUP COORDINATES OF PLANE WAVES
+ number of total plane waves = 667317
+
+ SETUP COORDINATES OF PLANE WAVES
+ number of |g| = 2438
+ max |g| = 32.553990643
+ min |g| = 0
+ DONE : INIT PLANEWAVE Time : 0.350971238862 (SEC)
+
+ npwx = 10449
+
+ SETUP NONLOCAL PSEUDOPOTENTIALS IN PLANE WAVE BASIS
+ H non-local projectors:
+ projector 1 L=0
+ projector 2 L=0
+ C non-local projectors:
+ projector 1 L=0
+ projector 2 L=0
+ projector 3 L=1
+ projector 4 L=1
+ TOTAL NUMBER OF NONLOCAL PROJECTORS = 16
+ DONE : LOCAL POTENTIAL Time : 0.494807609997 (SEC)
+
+
+ Init Non-Local PseudoPotential table :
+ Init Non-Local-Pseudopotential done.
+ DONE : NON-LOCAL POTENTIAL Time : 0.501984705625 (SEC)
+
+ start_pot = atomic
+ DONE : INIT POTENTIAL Time : 0.639263 (SEC)
+
+
+ Make real space PAO into reciprocal space.
+ max mesh points in Pseudopotential = 601
+ dq(describe PAO in reciprocal space) = 0.01
+ max q = 1143
+
+ number of pseudo atomic orbitals for H is 0
+
+ number of pseudo atomic orbitals for C is 0
+ DONE : INIT BASIS Time : 0.917201 (SEC)
+
+ ...............Nose-Hoover Chain parameter initialization...............
+ Temperature = 0
+ Temperature2 = 0
+ NHC frequency = 0.00120944
+ NHC chain = 4
+ Qmass = 1822.89
+ ...............................................................
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 1--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 9.642857 1.320000
+
+ Density error is 0.925917380140
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 2--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 2.357143 0.370000
+
+ Density error is 0.103089655783
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 3--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 4.500000 0.620000
+
+ Density error is 0.029305943975
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 4--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 3.928571 0.550000
+
+ Density error is 0.215036462399
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 5--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 3.285714 0.480000
+
+ Density error is 0.000079236362
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 6--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 6.857143 0.890000
+
+ Density error is 0.000065409462
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 7--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 3.071429 0.440000
+
+ Density error is 0.000015159186
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 8--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 5.214286 0.690000
+
+ Density error is 0.000000616832
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 9--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 4.357143 0.590000
+
+ Density error is 0.000000158907
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 10--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 5.857143 0.760000
+
+ Density error is 0.000000003032
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 11--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 6.500000 0.840000
+
+ Density error is 0.000000000145
+
+ charge density convergence is achieved
+ final etot is -219.129937819178 eV
+
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-FORCE (eV/Angstrom)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ atom x y z
+ H1 +1.340517 -2.319940 -3.252982
+ H2 -4.366521 +0.525384 -0.271324
+ H3 +1.946277 +3.914840 -0.100276
+ H4 +0.968648 -1.975710 +3.652965
+ C1 +0.111080 -0.144573 -0.028383
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-STRESS (KBAR)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ +10.830707 +0.064341 +0.036055
+ +0.064341 +10.682670 -0.044656
+ +0.036055 -0.044656 +10.497451
+
+output Pressure for check!
+Virtual Pressure is +21.340552 Kbar
+Virial Term is +21.340552 Kbar
+Kenetic Term is +0.000000 Kbar
+
+ --------------------------------------------------
+ Molecular Dynamics (NVT) STEP 1
+ --------------------------------------------------
+--------------------------------------------------
+ SUMMARY OF NVT CALCULATION
+ --------------------------------------------------
+ NVT Conservation : -16.105748 (Rydberg)
+ NVT Temperature : +0.000000 (K)
+ NVT Kinetic energy : +0.000000 (Rydberg)
+ NVT Potential energy : -16.105748 (Rydberg)
+ maxForce : +0.007343
+ maxStep : +0.039821
+ MD_STEP SystemE Conserved DeltaE Temperature
+ +1 -8.052874 -8.052874 +0.000000 +172.203317
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+1 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +53.714286 +6.150000
+
+ Density error is +0.003432405487
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+2 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.214286 +0.340000
+
+ Density error is +0.000062275134
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+3 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.000000 +0.530000
+
+ Density error is +0.000015792053
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+4 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +3.142857 +0.450000
+
+ Density error is +0.000001338459
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+5 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.642857 +0.610000
+
+ Density error is +0.000000192378
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+6 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +3.142857 +0.460000
+
+ Density error is +0.000000025550
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+7 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.714286 +0.640000
+
+ Density error is +0.000000014039
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+8 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.142857 +0.330000
+
+ Density error is +0.000000005006
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+9 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.428571 +0.370000
+
+ Density error is +0.000000001075
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+10 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.571429 +0.630000
+
+ Density error is +0.000000000036
+
+ charge density convergence is achieved
+ final etot is -219.440527700460 eV
+
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-FORCE (eV/Angstrom)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ atom x y z
+ H1 +1.004871 -1.739881 -2.441947
+ H2 -3.252618 +0.393216 -0.201464
+ H3 +1.449497 +2.920979 -0.074231
+ H4 +0.723985 -1.478039 +2.737075
+ C1 +0.074265 -0.096275 -0.019433
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-STRESS (KBAR)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ +8.239066 +0.040673 +0.022701
+ +0.040673 +8.146118 -0.028152
+ +0.022701 -0.028152 +8.029180
+
+output Pressure for check!
+Virtual Pressure is +16.387160 Kbar
+Virial Term is +16.276243 Kbar
+Kenetic Term is +0.110917 Kbar
+
+ --------------------------------------------------
+ Molecular Dynamics (NVT) STEP 2
+ --------------------------------------------------
+--------------------------------------------------
+ SUMMARY OF NVT CALCULATION
+ --------------------------------------------------
+ NVT Conservation : -16.108578 (Rydberg)
+ NVT Temperature : +526.047604 (K)
+ NVT Kinetic energy : +0.019991 (Rydberg)
+ NVT Potential energy : -16.128576 (Rydberg)
+ maxForce : +0.004075
+ maxStep : +0.098572
+ MD_STEP SystemE Conserved DeltaE Temperature
+ +2 -8.064288 -8.054289 +0.000000 +1063.334415
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+1 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +54.857143 +6.240000
+
+ Density error is +0.019351753103
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+2 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.214286 +0.340000
+
+ Density error is +0.000283196908
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+3 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.071429 +0.550000
+
+ Density error is +0.000097414254
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+4 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.785714 +0.410000
+
+ Density error is +0.000008367964
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+5 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +3.857143 +0.540000
+
+ Density error is +0.000001252601
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+6 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +3.642857 +0.510000
+
+ Density error is +0.000000066252
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+7 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +5.071429 +0.670000
+
+ Density error is +0.000000013589
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+8 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.571429 +0.610000
+
+ Density error is +0.000000024404
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+9 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.000000 +0.320000
+
+ Density error is +0.000000010839
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+10 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.071429 +0.340000
+
+ Density error is +0.000000002800
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+11 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.000000 +0.550000
+
+ Density error is +0.000000000052
+
+ charge density convergence is achieved
+ final etot is -219.862433615028 eV
+
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-FORCE (eV/Angstrom)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ atom x y z
+ H1 +0.308191 -0.535728 -0.757725
+ H2 -0.975237 +0.122318 -0.058835
+ H3 +0.431328 +0.882198 -0.020974
+ H4 +0.218386 -0.449293 +0.842665
+ C1 +0.017332 -0.019495 -0.005131
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-STRESS (KBAR)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ +2.590889 -0.001256 -0.000685
+ -0.001256 +2.591786 +0.001012
+ -0.000685 +0.001012 +2.595960
+
+output Pressure for check!
+Virtual Pressure is +5.870656 Kbar
+Virial Term is +5.185757 Kbar
+Kenetic Term is +0.684900 Kbar
+
+ --------------------------------------------------
+ Molecular Dynamics (NVT) STEP 3
+ --------------------------------------------------
+--------------------------------------------------
+ SUMMARY OF NVT CALCULATION
+ --------------------------------------------------
+ NVT Conservation : -16.111086 (Rydberg)
+ NVT Temperature : +1266.849197 (K)
+ NVT Kinetic energy : +0.048143 (Rydberg)
+ NVT Potential energy : -16.159585 (Rydberg)
+ maxForce : +0.000367
+ maxStep : +0.114449
+ MD_STEP SystemE Conserved DeltaE Temperature
+ +3 -8.079793 -8.055543 +0.000000 +1452.963348
+
+
+ --------------------------------------------
+ !FINAL_ETOT_IS -219.8624336150282090 eV
+ --------------------------------------------
+
+
+
+
+
+
+ |CLASS_NAME---------|NAME---------------|TIME(Sec)-----|CALLS----|AVG------|PER%-------
+ total +67.074 15 +4.47 +100.00 %
+ Run_pw plane_wave_line +67.04 1 +67.04 +99.95 %
+ PW_Basis gen_pw +0.26 1 +0.26 +0.39 %
+ Run_MD_PW md_cells_pw +66.70 1 +66.70 +99.45 %
+ ppcell_vl init_vloc +0.12 1 +0.12 +0.18 %
+ Potential init_pot +0.46 4 +0.11 +0.68 %
+ FFT FFT3D +26.79 8433 +0.00 +39.94 %
+ Charge atomic_rho +0.12 7 +0.02 +0.18 %
+ Potential v_of_rho +3.52 36 +0.10 +5.25 %
+ H_XC_pw v_xc +3.31 39 +0.08 +4.93 %
+ H_Hartree_pw v_hartree +0.42 36 +0.01 +0.63 %
+ wavefunc wfcinit +1.06 4 +0.26 +1.58 %
+ pp_cell_vnl getvnl +0.15 42 +0.00 +0.22 %
+ Hamilt_PW diagH_subspace +3.50 36 +0.10 +5.21 %
+ Hamilt_PW h_psi +27.80 3259 +0.01 +41.45 %
+ Hamilt_PW vloc +25.80 3259 +0.01 +38.46 %
+ Hamilt_PW vnl +1.91 3259 +0.00 +2.85 %
+ Hamilt_PW add_nonlocal_pp +0.90 3259 +0.00 +1.35 %
+ Run_MD_PW md_ions_pw +66.15 1 +66.15 +98.63 %
+ Electrons self_consistent +62.27 3 +20.76 +92.84 %
+ Electrons c_bands +29.33 32 +0.92 +43.73 %
+ Hamilt diagH_pw +29.20 32 +0.91 +43.54 %
+ Diago_CG diag +26.09 34 +0.77 +38.90 %
+ Charge sum_band +2.94 32 +0.09 +4.38 %
+ Charge rho_mpi +1.08 32 +0.03 +1.61 %
+ Charge mix_rho +0.97 32 +0.03 +1.45 %
+ Forces cal_force_nl +0.24 3 +0.08 +0.36 %
+ Stress_PW cal_stress +1.94 3 +0.65 +2.89 %
+ Stress_Func stress_ew +22.20 2 +11.10 +33.10 %
+ Force_Func stress_ew +22.20 2 +11.10 +33.10 %
+ Stress_Func stress_gga +0.13 3 +0.04 +0.19 %
+ Stress_Func stres_nl +1.63 3 +0.54 +2.43 %
+ ----------------------------------------------------------------------------------------
+
+ CLASS_NAME---------|NAME---------------|MEMORY(MB)--------
+ +70.3196
+ Charge_Pulay Rrho +13.1836
+ Charge_Pulay dRrho +11.5356
+ Charge_Pulay drho +11.5356
+ Use_FFT porter +3.2959
+ PW_Basis struc_fac +2.5457
+ wavefunc evc +2.2321
+ Charge rho +1.6479
+ Charge rho_save +1.6479
+ Charge rho_core +1.6479
+ Potential vltot +1.6479
+ Potential vr +1.6479
+ Potential vr_eff +1.6479
+ Potential vr_eff1 +1.6479
+ Potential vnew +1.6479
+ Charge_Pulay rho_save2 +1.6479
+ ----------------------------------------------------------
+
+ Start Time : Fri Nov 12 18:15:13 2021
+ Finish Time : Fri Nov 12 18:16:20 2021
+ Total Time : 0 h 1 mins 7 secs
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/STRU b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/STRU
new file mode 100644
index 000000000..9df80429c
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000000/STRU
@@ -0,0 +1,25 @@
+ATOMIC_SPECIES
+H 1.008 H_ONCV_PBE-1.0.upf
+C 12.010 C_ONCV_PBE-1.0.upf
+
+LATTICE_CONSTANT
+1.8897261254578281
+
+LATTICE_VECTORS
+9.500003790418825 0.0 0.0
+0.0 9.500003790418825 0.0
+0.0 0.0 9.500003790418825
+
+ATOMIC_POSITIONS
+Cartesian # Cartesian(Unit is LATTICE_CONSTANT)
+H
+0.0
+4
+5.097444375976 3.891293394194 3.462261233691 1 1 1
+3.796292512908 4.557084804487 4.168353214339 1 1 1
+5.223523410907 5.328269903334 4.206766613435 1 1 1
+5.007077103527 3.977914209143 5.081170168915 1 1 1
+C
+0.0
+1
+4.779784174238 4.440311459394 4.230030312730 1 1 1
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/INPUT b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/INPUT
new file mode 100644
index 000000000..c3181c397
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/INPUT
@@ -0,0 +1,20 @@
+INPUT_PARAMETERS
+
+calculation md
+atom_file STRU
+kpoint_file KPT
+pseudo_dir ./
+ntype 2
+symmetry 1
+ecutwfc 90
+
+npool 1
+
+mixing_type pulay
+mixing_beta 0.4
+
+nstep 3
+force_thr_ev 0.02
+#move_method cg
+out_stru 0
+stress 1
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/INPUT b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/INPUT
new file mode 100644
index 000000000..63bd0ed40
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/INPUT
@@ -0,0 +1,263 @@
+INPUT_PARAMETERS
+#Parameters (1.General)
+suffix ABACUS #the name of main output directory
+latname test #the name of lattice name
+atom_file STRU #the filename of file containing atom positions
+kpoint_file KPT #the name of file containing k points
+pseudo_dir .// #the directory containing pseudo files
+orbital_dir #the directory containing orbital files
+pseudo_type auto #the type pseudo files
+pseudo_rcut 15 #cut-off radius for radial integration
+renormwithmesh 0 #0: use our own mesh to do radial renormalization; 1: use mesh as in QE
+lmaxmax 2 #maximum of l channels used
+dft_functional none #exchange correlation functional
+calculation md #test; scf; relax; nscf; ienvelope; istate;
+ntype 2 #atom species number
+nspin 1 #1: single spin; 2: up and down spin; 4: noncollinear spin
+nbands 0 #number of bands
+nbands_sto 0 #number of stochastic bands
+nbands_istate 5 #number of bands around Fermi level for istate calulation
+nche_sto 0 #number of orders for Chebyshev expansion in stochastic DFT
+symmetry 0 #turn symmetry on or off
+set_vel 0 #read velocity from STRU or not
+symmetry_prec 1e-05 #accuracy for symmetry
+nelec 0 #input number of electrons
+tot_magnetization 0 #total magnetization of the system
+
+#Parameters (2.PW)
+ecutwfc 90 ##energy cutoff for wave functions
+diago_cg_maxiter 50 #max iteration number for cg
+diago_cg_prec 1 #diago_cg_prec
+ethr 0.01 #threshold for eigenvalues is cg electron iterations
+dr2 1e-09 #charge density error
+start_wfc atomic #start wave functions are from 'atomic' or 'file'
+start_charge atomic #start charge is from 'atomic' or file
+charge_extrap atomic #atomic; first-order; second-order; dm:coefficients of SIA
+out_charge 0 #>0 output charge density for selected electron steps
+out_potential 0 #output realspace potential
+out_wf 0 #output wave functions
+out_dos 0 #output energy and dos
+out_band 0 #output energy and band structure
+restart_save 0 #print to disk every step for restart
+restart_load 0 #restart from disk
+read_file_dir auto #directory of files for reading
+nx 0 #number of points along x axis for FFT grid
+ny 0 #number of points along y axis for FFT grid
+nz 0 #number of points along z axis for FFT grid
+cell_factor 1.2 #used in the construction of the pseudopotential tables
+
+#Parameters (3.Relaxation)
+ks_solver cg #cg; dav; lapack; genelpa; hpseps; scalapack_gvx
+niter 40 ##number of electron iterations
+force_set 0 #output the force_set or not
+nstep 3 #number of ion iteration steps
+out_stru 0 #output the structure files after each ion step
+force_thr 0.00077787 #force threshold, unit: Ry/Bohr
+force_thr_ev 0.02 #force threshold, unit: eV/Angstrom
+force_thr_ev2 0 #force invalid threshold, unit: eV/Angstrom
+cg_threshold 0.5 #threshold for switching from cg to bfgs, unit: eV/Angstrom
+stress_thr 0.01 #stress threshold
+press1 0 #target pressure, unit: KBar
+press2 0 #target pressure, unit: KBar
+press3 0 #target pressure, unit: KBar
+bfgs_w1 0.01 #wolfe condition 1 for bfgs
+bfgs_w2 0.5 #wolfe condition 2 for bfgs
+trust_radius_max 0.8 #maximal trust radius, unit: Bohr
+trust_radius_min 1e-05 #minimal trust radius, unit: Bohr
+trust_radius_ini 0.5 #initial trust radius, unit: Bohr
+stress 1 #calculate the stress or not
+fixed_axes None #which axes are fixed
+move_method cg #bfgs; sd; cg; cg_bfgs;
+out_level m #ie(for electrons); i(for ions);
+out_dm 0 #>0 output density matrix
+out_descriptor 0 #>0 compute descriptor for deepks
+lmax_descriptor 2 #>0 lmax used in descriptor for deepks
+
+#Parameters (4.LCAO)
+basis_type pw #PW; LCAO in pw; LCAO
+new_dm 1 #Type of density matrix; 0: old 1: new
+search_radius -1 #input search radius (Bohr)
+search_pbc 1 #input periodic boundary condition
+lcao_ecut 0 #energy cutoff for LCAO
+lcao_dk 0.01 #delta k for 1D integration in LCAO
+lcao_dr 0.01 #delta r for 1D integration in LCAO
+lcao_rmax 30 #max R for 1D two-center integration table
+out_hs 0 #output H and S matrix
+out_hs2 0 #output H(R) and S(R) matrix
+out_r 0 #output r(R) matrix
+out_lowf 0 #ouput LCAO wave functions
+bx 1 #division of an element grid in FFT grid along x
+by 1 #division of an element grid in FFT grid along y
+bz 1 #division of an element grid in FFT grid along z
+
+#Parameters (5.Smearing)
+smearing fixed #type of smearing: gauss; fd; fixed; mp; mp2; mv
+sigma 0.01 #energy range for smearing
+
+#Parameters (6.Charge Mixing)
+mixing_type pulay #plain; kerker; pulay; pulay-kerker; broyden
+mixing_beta 0.4 #mixing parameter: 0 means no new charge
+mixing_ndim 8 #mixing dimension in pulay
+mixing_gg0 0 #mixing parameter in kerker
+
+#Parameters (7.DOS)
+dos_emin_ev -15 #minimal range for dos
+dos_emax_ev 15 #maximal range for dos
+dos_edelta_ev 0.01 #delta energy for dos
+dos_scale 0.01 #scale dos range by
+dos_sigma 0.07 #gauss b coefficeinet(default=0.07)
+
+#Parameters (8.Technique)
+gamma_only 0 #gamma only, only used in LCAO basis
+diago_proc 8 #number of proc used to diago
+npool 1 #number of pools for k points, pw only
+mem_saver 0 #memory saver for many k points used
+printe 100 #print band energy for selectively ionic steps
+
+#Parameters (9.SIAO)
+selinv_npole 40 #number of selected poles
+selinv_temp 2000 #temperature for Fermi-Dirac distribution
+selinv_gap 0 #supposed gap in the calculation
+selinv_deltae 2 #expected energy range
+selinv_mu -1 #chosen mu as Fermi energy
+selinv_threshold 0.001 #threshold for calculated electron number
+selinv_niter 50 #max number of steps to update mu
+
+#Parameters (10.Molecular dynamics)
+md_mdtype 1 #choose ensemble
+md_potential FP #choose potential
+md_dt 1 #time step
+mnhc 4 #number of Nose-Hoover chains
+md_qmass 1 #mass of thermostat
+md_tfirst 0 #temperature first
+md_tlast 0 #temperature last
+md_dumpmdfred 1 #The period to dump MD information for monitoring and restarting MD
+md_mdoutpath mdoutput #output path of md
+md_rstmd 0 #whether restart
+md_fixtemperature 1 #period to change temperature
+md_ediff 0.0001 #parameter for constraining total energy change
+md_ediffg 0.001 #parameter for constraining max force change
+NVT_tau 0 #parameter for adjust effect of thermostat
+NVT_control 1 #choose which thermostat used in NVT ensemble
+rcut_lj 8.5 #cutoff radius of LJ potential
+epsilon_lj 0.01032 #the value of epsilon for LJ potential
+sigma_lj 3.405 #the value of sigma for LJ potential
+
+#Parameters (11.Efield)
+efield 0 #add electric field
+edir 1 #add electric field
+emaxpos 0.5 #maximal position of efield [0,1)
+eopreg 0.1 #where sawlike potential decrease
+eamp 0.001 #amplitute of the efield, unit is a.u.
+eamp_v 0.05144 #amplitute of the efield, unit is V/A
+
+#Parameters (12.Test)
+out_alllog 0 #output information for each processor, when parallel
+nurse 0 #for coders
+colour 0 #for coders, make their live colourful
+t_in_h 1 #calculate the kinetic energy or not
+vl_in_h 1 #calculate the local potential or not
+vnl_in_h 1 #calculate the nonlocal potential or not
+vh_in_h 1 #calculate the hartree potential or not
+vxc_in_h 1 #calculate the xc potential or not
+vion_in_h 1 #calculate the local ionic potential or not
+test_force 0 #test the force
+test_stress 0 #test the force
+
+#Parameters (13.Other Methods)
+mlwf_flag 0 #turn MLWF on or off
+opt_epsilon2 0 #calculate the dielectic function
+opt_nbands 0 #number of bands for optical calculation
+
+#Parameters (14.VdW Correction)
+vdw_method none #the method of calculating vdw (none ; d2 ; d3_0 ; d3_bj
+vdw_s6 default #scale parameter of d2/d3_0/d3_bj
+vdw_s8 default #scale parameter of d3_0/d3_bj
+vdw_a1 default #damping parameter of d3_0/d3_bj
+vdw_a2 default #damping parameter of d3_bj
+vdw_d 20 #damping parameter of d2
+vdw_abc 0 #third-order term?
+vdw_C6_file default #filename of C6
+vdw_C6_unit Jnm6/mol #unit of C6, Jnm6/mol or eVA6
+vdw_R0_file default #filename of R0
+vdw_R0_unit A #unit of R0, A or Bohr
+vdw_model radius #expression model of periodic structure, radius or period
+vdw_radius default #radius cutoff for periodic structure
+vdw_radius_unit Bohr #unit of radius cutoff for periodic structure
+vdw_cn_thr 40 #radius cutoff for cn
+vdw_cn_thr_unit Bohr #unit of cn_thr, Bohr or Angstrom
+vdw_period 3 3 3 #periods of periodic structure
+
+#Parameters (15.spectrum)
+spectral_type None #the type of the calculated spectrum
+spectral_method 0 #0: tddft(linear response)
+kernel_type rpa #the kernel type: rpa, tdlda ...
+eels_method 0 #0: hilbert_transform method; 1: standard method
+absorption_method 0 #0: vasp's method 1: pwscf's method
+system bulk #the calculate system
+eta 0.05 #eta(Ry)
+domega 0.01 #domega(Ry)
+nomega 300 #nomega
+ecut_chi 1 #the dimension of chi matrix
+q_start 0.1 0.1 0.1 #the position of the first q point in direct coordinate
+q_direction 1 0 0 #the q direction
+nq 1 #the total number of qpoints for calculation
+out_epsilon 1 #output epsilon or not
+out_chi 0 #output chi or not
+out_chi0 0 #output chi0 or not
+fermi_level 0 #the change of the fermi_level(Ry)
+coulomb_cutoff 0 # turn on the coulomb_cutoff or not
+kmesh_interpolation 0 #calculting
+qcar 0 0 0 #(unit: 2PI/lat0)
+ocp 0 #change occupation or not
+ocp_set none #set occupation
+lcao_box 10 10 10 #the scale for searching the existence of the overlap
+ mulliken 0 # mulliken charge or not
+intrasmear 0 #Eta
+shift 0 #shift
+metalcalc 0 #metal or not
+eps_degauss 0.01 #degauss in calculating epsilon0
+noncolin 0 #using non-collinear-spin
+lspinorb 0 #consider the spin-orbit interaction
+
+#Parameters (17.exx)
+exx_hybrid_type no #no, hf, pbe0, hse or opt_orb
+exx_hybrid_alpha 0.25 #
+exx_hse_omega 0.11 #
+exx_separate_loop 1 #0 or 1
+exx_hybrid_step 100 #
+exx_lambda 0.3 #
+exx_pca_threshold 0 #
+exx_c_threshold 0 #
+exx_v_threshold 0 #
+exx_dm_threshold 0 #
+exx_schwarz_threshold0 #
+exx_cauchy_threshold0 #
+exx_ccp_threshold 1e-08 #
+exx_ccp_rmesh_times 10 #
+exx_distribute_type htime #htime or kmeans1 or kmeans2
+exx_opt_orb_lmax 0 #
+exx_opt_orb_ecut 0 #
+exx_opt_orb_tolerence0 #
+
+#Parameters (17.tddft)
+tddft 0 #calculate tddft or not
+td_dr2 1e-09 #threshold for electronic iteration of tddft
+td_dt 0.02 #time of ion step
+td_force_dt 0.02 #time of force change
+td_val_elec_01 1 #td_val_elec_01
+td_val_elec_02 1 #td_val_elec_02
+td_val_elec_03 1 #td_val_elec_03
+td_vext 0 #add extern potential or not
+td_vext_dire 1 #extern potential direction
+td_timescale 0.5 #extern potential td_timescale
+td_vexttype 1 #extern potential type
+td_vextout 0 #output extern potential or not
+td_dipoleout 0 #output dipole or not
+
+#Parameters (18.berry_wannier)
+berry_phase 0 #calculate berry phase or not
+gdir 3 #calculate the polarization in the direction of the lattice std::vector
+towannier90 0 #use wannier90 code interface or not
+nnkpfile seedname.nnkp #the wannier90 code nnkp file name
+wannier_spin up #calculate spin in wannier90 code interface
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/STRU_MD b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/STRU_MD
new file mode 100644
index 000000000..10302ea51
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/STRU_MD
@@ -0,0 +1,27 @@
+ATOMIC_SPECIES
+H 1.008 H_ONCV_PBE-1.0.upf
+C 12.01 C_ONCV_PBE-1.0.upf
+
+LATTICE_CONSTANT
+1.88972612546
+
+LATTICE_VECTORS
+9.70691437102 0 0 #latvec1
+-0.281382603073 9.68406871255 0 #latvec2
+0.158246266482 -0.163817668352 9.58297385826 #latvec3
+
+ATOMIC_POSITIONS
+Direct
+
+H #label
+0 #magnetism
+4 #number of atoms
+0.535461381214 0.40022105074 0.350517908729 1 1 1 0 0 0
+0.384059480088 0.479432956913 0.433779873798 1 1 1 0 0 0
+0.553450272577 0.569838705306 0.439037455701 1 1 1 0 0 0
+0.521761060531 0.414199303256 0.541959017837 1 1 1 0 0 0
+
+C #label
+0 #magnetism
+1 #number of atoms
+0.498801629025 0.465841043252 0.44124373684 1 1 1 0 0 0
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/STRU_READIN_ADJUST.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/STRU_READIN_ADJUST.cif
new file mode 100644
index 000000000..233b8c367
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/STRU_READIN_ADJUST.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.70691
+_cell_length_b 9.68815
+_cell_length_c 9.58568
+_cell_angle_alpha 91.0063
+_cell_angle_beta 89.0541
+_cell_angle_gamma 91.6643
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.53097 0.408053 0.361246
+H 0.398147 0.47768 0.434684
+H 0.54717 0.557856 0.43944
+H 0.51918 0.420134 0.530801
+C 0.498731 0.465842 0.441171
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/md_pos_1.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/md_pos_1.cif
new file mode 100644
index 000000000..5a5b6ed05
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/md_pos_1.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.70691
+_cell_length_b 9.68815
+_cell_length_c 9.58568
+_cell_angle_alpha 91.0063
+_cell_angle_beta 89.0541
+_cell_angle_gamma 91.6643
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.531666 0.406832 0.359568
+H 0.395926 0.477951 0.434543
+H 0.548145 0.559719 0.439384
+H 0.519578 0.419226 0.532529
+C 0.498744 0.465842 0.441183
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/md_pos_2.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/md_pos_2.cif
new file mode 100644
index 000000000..898144995
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/md_pos_2.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.70691
+_cell_length_b 9.68815
+_cell_length_c 9.58568
+_cell_angle_alpha 91.0063
+_cell_angle_beta 89.0541
+_cell_angle_gamma 91.6643
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.533403 0.403793 0.355398
+H 0.390433 0.478629 0.434192
+H 0.550578 0.564369 0.439236
+H 0.520575 0.416939 0.536854
+C 0.498773 0.465841 0.441212
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/md_pos_3.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/md_pos_3.cif
new file mode 100644
index 000000000..a10888c1f
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/md_pos_3.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.70691
+_cell_length_b 9.68815
+_cell_length_c 9.58568
+_cell_angle_alpha 91.0063
+_cell_angle_beta 89.0541
+_cell_angle_gamma 91.6643
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.535461 0.400221 0.350518
+H 0.384059 0.479433 0.43378
+H 0.55345 0.569839 0.439037
+H 0.521761 0.414199 0.541959
+C 0.498802 0.465841 0.441244
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/running_md.log b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/running_md.log
new file mode 100644
index 000000000..e60ae9ad2
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/OUT.ABACUS/running_md.log
@@ -0,0 +1,701 @@
+
+ WELCOME TO ABACUS
+
+ 'Atomic-orbital Based Ab-initio Computation at UStc'
+
+ Website: http://abacus.ustc.edu.cn/
+
+ Version: Parallel, in development
+ Processor Number is 8
+ Start Time is Fri Nov 12 18:16:22 2021
+
+ ------------------------------------------------------------------------------------
+
+ READING GENERAL INFORMATION
+ global_out_dir = OUT.ABACUS/
+ global_in_card = INPUT
+ pseudo_dir =
+ orbital_dir =
+ pseudo_type = auto
+ DRANK = 1
+ DSIZE = 8
+ DCOLOR = 1
+ GRANK = 1
+ GSIZE = 1
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Reading atom information in unitcell: |
+ | From the input file and the structure file we know the number of |
+ | different elments in this unitcell, then we list the detail |
+ | information for each element, especially the zeta and polar atomic |
+ | orbital number for each element. The total atom number is counted. |
+ | We calculate the nearest atom distance for each atom and show the |
+ | Cartesian and Direct coordinates for each atom. We list the file |
+ | address for atomic orbitals. The volume and the lattice vectors |
+ | in real and reciprocal space is also shown. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+ READING UNITCELL INFORMATION
+ ntype = 2
+ atom label for species 1 = H
+ atom label for species 2 = C
+ lattice constant (Bohr) = 1.88973
+ lattice constant (Angstrom) = 1
+
+ READING ATOM TYPE 1
+ atom label = H
+ L=0, number of zeta = 1
+ L=1, number of zeta = 1
+ L=2, number of zeta = 1
+ number of atom for this type = 4
+ start magnetization = FALSE
+ start magnetization = FALSE
+ start magnetization = FALSE
+ start magnetization = FALSE
+
+ READING ATOM TYPE 2
+ atom label = C
+ L=0, number of zeta = 1
+ L=1, number of zeta = 1
+ L=2, number of zeta = 1
+ number of atom for this type = 1
+ start magnetization = FALSE
+
+ TOTAL ATOM NUMBER = 5
+
+ CARTESIAN COORDINATES ( UNIT = 1.88973 Bohr ).
+ atom x y z mag vx vy vz
+ tauc_H1 5.09642839721 3.89243558658 3.46181024571 0 0 0 0
+ tauc_H2 3.79915812176 4.55467455263 4.16556354192 0 0 0 0
+ tauc_H3 5.22389947082 5.33033053366 4.21113724544 0 0 0 0
+ tauc_H4 5.00541687456 3.98165554454 5.08665008197 0 0 0 0
+ tauc_C1 4.77987185192 4.43897624107 4.22772783445 0 0 0 0
+
+
+ Volume (Bohr^3) = 6079.05350607
+ Volume (A^3) = 900.821712756
+
+ Lattice vectors: (Cartesian coordinate: in unit of a_0)
+ +9.70691437102 +0 +0
+ -0.281382603073 +9.68406871255 +0
+ +0.158246266482 -0.163817668352 +9.58297385826
+ Reciprocal vectors: (Cartesian coordinate: in unit of 2 pi/a_0)
+ +0.103019349072 +0.00299335470133 -0.00165001629058
+ -0 +0.10326238172 +0.0017652351819
+ +0 -0 +0.104351740367
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Reading pseudopotentials files: |
+ | The pseudopotential file is in UPF format. The 'NC' indicates that |
+ | the type of pseudopotential is 'norm conserving'. Functional of |
+ | exchange and correlation is decided by 4 given parameters in UPF |
+ | file. We also read in the 'core correction' if there exists. |
+ | Also we can read the valence electrons number and the maximal |
+ | angular momentum used in this pseudopotential. We also read in the |
+ | trail wave function, trail atomic density and local-pseudopotential|
+ | on logrithmic grid. The non-local pseudopotential projector is also|
+ | read in if there is any. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+ PAO radial cut off (Bohr) = 15
+
+ Read in pseudopotential file is H_ONCV_PBE-1.0.upf
+ pseudopotential type = NC
+ functional Ex = PBE
+ functional Ec =
+ functional GCEx =
+ functional GCEc =
+ nonlocal core correction = 0
+ valence electrons = 1
+ lmax = 0
+ number of zeta = 0
+ number of projectors = 2
+ L of projector = 0
+ L of projector = 0
+ PAO radial cut off (Bohr) = 15
+
+ Read in pseudopotential file is C_ONCV_PBE-1.0.upf
+ pseudopotential type = NC
+ functional Ex = PBE
+ functional Ec =
+ functional GCEx =
+ functional GCEc =
+ nonlocal core correction = 0
+ valence electrons = 4
+ lmax = 1
+ number of zeta = 0
+ number of projectors = 4
+ L of projector = 0
+ L of projector = 0
+ L of projector = 1
+ L of projector = 1
+ initial pseudo atomic orbital number = 0
+ NLOCAL = 45
+
+ SETUP THE ELECTRONS NUMBER
+ electron number of element H = 1
+ total electron number of element H = 4
+ electron number of element C = 4
+ total electron number of element C = 4
+ occupied bands = 4
+ NBANDS = 14
+ DONE : SETUP UNITCELL Time : 0.070024178247 (SEC)
+
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Setup K-points |
+ | We setup the k-points according to input parameters. |
+ | The reduced k-points are set according to symmetry operations. |
+ | We treat the spin as another set of k-points. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+
+ SETUP K-POINTS
+ nspin = 1
+ Input type of k points = Monkhorst-Pack(Gamma)
+ nkstot = 1
+
+ KPOINTS DIRECT_X DIRECT_Y DIRECT_Z WEIGHT
+ 1 0 0 0 1
+
+ k-point number in this process = 1
+ minimum distributed K point number = 1
+
+ KPOINTS CARTESIAN_X CARTESIAN_Y CARTESIAN_Z WEIGHT
+ 1 0 0 0 2
+
+ KPOINTS DIRECT_X DIRECT_Y DIRECT_Z WEIGHT
+ 1 0 0 0 2
+ DONE : INIT K-POINTS Time : 0.0716588154319 (SEC)
+
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Setup plane waves: |
+ | Use the energy cutoff and the lattice vectors to generate the |
+ | dimensions of FFT grid. The number of FFT grid on each processor |
+ | is 'nrxx'. The number of plane wave basis in reciprocal space is |
+ | different for charege/potential and wave functions. We also set |
+ | the 'sticks' for the parallel of FFT. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+
+ SETUP THE PLANE WAVE BASIS
+ energy cutoff for wavefunc (unit:Ry) = 90
+ [fft grid for wave functions] = 120, 120, 120
+ [fft grid for charge/potential] = 120, 120, 120
+ [fft grid division] = 1, 1, 1
+ [big fft grid for charge/potential] = 120, 120, 120
+ nbxx = 216000
+ nrxx = 216000
+
+ SETUP PLANE WAVES FOR CHARGE/POTENTIAL
+ number of plane waves = 701419
+ number of sticks = 9633
+
+ SETUP PLANE WAVES FOR WAVE FUNCTIONS
+ number of plane waves = 87687
+ number of sticks = 2409
+
+ PARALLEL PW FOR CHARGE/POTENTIAL
+ PROC COLUMNS(POT) PW
+ 1 1204 87678
+ 2 1204 87678
+ 3 1205 87677
+ 4 1204 87678
+ 5 1204 87677
+ 6 1204 87677
+ 7 1204 87677
+ 8 1204 87677
+ --------------- sum -------------------
+ 8 9633 701419
+
+ PARALLEL PW FOR WAVE FUNCTIONS
+ PROC COLUMNS(W) PW
+ 1 300 10959
+ 2 301 10962
+ 3 303 10960
+ 4 302 10960
+ 5 303 10961
+ 6 300 10961
+ 7 301 10964
+ 8 299 10960
+ --------------- sum -------------------
+ 8 2409 87687
+
+ SETUP COORDINATES OF PLANE WAVES
+ number of total plane waves = 701419
+
+ SETUP COORDINATES OF PLANE WAVES
+ number of |g| = 84378
+ max |g| = 32.563923009
+ min |g| = 0
+ DONE : INIT PLANEWAVE Time : 0.350538940344 (SEC)
+
+ npwx = 10959
+
+ SETUP NONLOCAL PSEUDOPOTENTIALS IN PLANE WAVE BASIS
+ H non-local projectors:
+ projector 1 L=0
+ projector 2 L=0
+ C non-local projectors:
+ projector 1 L=0
+ projector 2 L=0
+ projector 3 L=1
+ projector 4 L=1
+ TOTAL NUMBER OF NONLOCAL PROJECTORS = 16
+ DONE : LOCAL POTENTIAL Time : 4.32109053986 (SEC)
+
+
+ Init Non-Local PseudoPotential table :
+ Init Non-Local-Pseudopotential done.
+ DONE : NON-LOCAL POTENTIAL Time : 4.32724457909 (SEC)
+
+ start_pot = atomic
+ DONE : INIT POTENTIAL Time : 4.80582 (SEC)
+
+
+ Make real space PAO into reciprocal space.
+ max mesh points in Pseudopotential = 601
+ dq(describe PAO in reciprocal space) = 0.01
+ max q = 1143
+
+ number of pseudo atomic orbitals for H is 0
+
+ number of pseudo atomic orbitals for C is 0
+ DONE : INIT BASIS Time : 5.09354 (SEC)
+
+ ...............Nose-Hoover Chain parameter initialization...............
+ Temperature = 0
+ Temperature2 = 0
+ NHC frequency = 0.00120944
+ NHC chain = 4
+ Qmass = 1822.89
+ ...............................................................
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 1--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 9.785714 1.390000
+
+ Density error is 0.942995755677
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 2--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 2.285714 0.410000
+
+ Density error is 0.099685883319
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 3--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 4.142857 0.650000
+
+ Density error is 0.029031982042
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 4--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 4.285714 0.660000
+
+ Density error is 0.216126036110
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 5--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 3.357143 0.540000
+
+ Density error is 0.000141170928
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 6--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 7.357143 1.070000
+
+ Density error is 0.000036712166
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 7--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 3.928571 0.680000
+
+ Density error is 0.000012403136
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 8--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 4.642857 0.780000
+
+ Density error is 0.000000169540
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 9--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 6.785714 1.080000
+
+ Density error is 0.000000193385
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 10--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 4.000000 0.630000
+
+ Density error is 0.000000002471
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 11--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 9.000000 1.160000
+
+ Density error is 0.000000000287
+
+ charge density convergence is achieved
+ final etot is -219.132652714524 eV
+
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-FORCE (eV/Angstrom)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ atom x y z
+ H1 +1.427623 -2.413519 -3.360832
+ H2 -4.528626 +0.554349 -0.282580
+ H3 +1.865702 +3.772834 -0.111599
+ H4 +0.916683 -1.897685 +3.461780
+ C1 +0.318617 -0.015979 +0.293231
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-STRESS (KBAR)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ +10.529622 -0.107421 -0.098680
+ -0.107421 +9.970420 +0.216130
+ -0.098680 +0.216130 +9.886865
+
+output Pressure for check!
+Virtual Pressure is +20.257937 Kbar
+Virial Term is +20.257937 Kbar
+Kenetic Term is +0.000000 Kbar
+
+ --------------------------------------------------
+ Molecular Dynamics (NVT) STEP 1
+ --------------------------------------------------
+--------------------------------------------------
+ SUMMARY OF NVT CALCULATION
+ --------------------------------------------------
+ NVT Conservation : -16.105947 (Rydberg)
+ NVT Temperature : +0.000000 (K)
+ NVT Kinetic energy : +0.000000 (Rydberg)
+ NVT Potential energy : -16.105947 (Rydberg)
+ maxForce : +0.007902
+ maxStep : +0.041308
+ MD_STEP SystemE Conserved DeltaE Temperature
+ +1 -8.052974 -8.052974 +0.000000 +171.583724
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+1 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +54.428571 +6.400000
+
+ Density error is +0.003416963341
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+2 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.214286 +0.340000
+
+ Density error is +0.000062315805
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+3 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.071429 +0.560000
+
+ Density error is +0.000015787808
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+4 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +3.357143 +0.480000
+
+ Density error is +0.000001288949
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+5 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +5.500000 +0.750000
+
+ Density error is +0.000000182921
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+6 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.857143 +0.420000
+
+ Density error is +0.000000016603
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+7 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +5.285714 +0.700000
+
+ Density error is +0.000000011064
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+8 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.000000 +0.330000
+
+ Density error is +0.000000004133
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+9 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +3.214286 +0.470000
+
+ Density error is +0.000000000094
+
+ charge density convergence is achieved
+ final etot is -219.442104652403 eV
+
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-FORCE (eV/Angstrom)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ atom x y z
+ H1 +1.068960 -1.799542 -2.503128
+ H2 -3.353024 +0.414117 -0.209592
+ H3 +1.397261 +2.832427 -0.092488
+ H4 +0.691597 -1.440532 +2.608917
+ C1 +0.195206 -0.006470 +0.196291
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-STRESS (KBAR)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ +7.986919 -0.080516 -0.073538
+ -0.080516 +7.635404 +0.126752
+ -0.073538 +0.126752 +7.556286
+
+output Pressure for check!
+Virtual Pressure is +15.557594 Kbar
+Virial Term is +15.452406 Kbar
+Kenetic Term is +0.105188 Kbar
+
+ --------------------------------------------------
+ Molecular Dynamics (NVT) STEP 2
+ --------------------------------------------------
+--------------------------------------------------
+ SUMMARY OF NVT CALCULATION
+ --------------------------------------------------
+ NVT Conservation : -16.108768 (Rydberg)
+ NVT Temperature : +524.091079 (K)
+ NVT Kinetic energy : +0.019916 (Rydberg)
+ NVT Potential energy : -16.128691 (Rydberg)
+ maxForce : +0.004333
+ maxStep : +0.101848
+ MD_STEP SystemE Conserved DeltaE Temperature
+ +2 -8.064346 -8.054384 +0.000000 +1059.261288
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+1 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +56.071429 +6.530000
+
+ Density error is +0.019256453110
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+2 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.214286 +0.340000
+
+ Density error is +0.000283272912
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+3 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.214286 +0.570000
+
+ Density error is +0.000097131520
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+4 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.714286 +0.400000
+
+ Density error is +0.000008019387
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+5 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.642857 +0.630000
+
+ Density error is +0.000001180377
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+6 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +3.571429 +0.500000
+
+ Density error is +0.000000049998
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+7 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +5.500000 +0.740000
+
+ Density error is +0.000000005236
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+8 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +5.285714 +0.690000
+
+ Density error is +0.000000019403
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+9 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.571429 +0.390000
+
+ Density error is +0.000000001790
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+10 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.000000 +0.550000
+
+ Density error is +0.000000000200
+
+ charge density convergence is achieved
+ final etot is -219.862372141037 eV
+
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-FORCE (eV/Angstrom)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ atom x y z
+ H1 +0.332157 -0.540133 -0.744680
+ H2 -0.978294 +0.129701 -0.061949
+ H3 +0.426044 +0.880050 -0.050137
+ H4 +0.219024 -0.477786 +0.818662
+ C1 +0.001069 +0.008168 +0.038104
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-STRESS (KBAR)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ +2.479531 -0.031426 -0.026005
+ -0.031426 +2.489387 -0.034015
+ -0.026005 -0.034015 +2.420180
+
+output Pressure for check!
+Virtual Pressure is +5.575435 Kbar
+Virial Term is +4.926065 Kbar
+Kenetic Term is +0.649370 Kbar
+
+ --------------------------------------------------
+ Molecular Dynamics (NVT) STEP 3
+ --------------------------------------------------
+--------------------------------------------------
+ SUMMARY OF NVT CALCULATION
+ --------------------------------------------------
+ NVT Conservation : -16.111265 (Rydberg)
+ NVT Temperature : +1261.973956 (K)
+ NVT Kinetic energy : +0.047957 (Rydberg)
+ NVT Potential energy : -16.159581 (Rydberg)
+ maxForce : +0.000370
+ maxStep : +0.117517
+ MD_STEP SystemE Conserved DeltaE Temperature
+ +3 -8.079790 -8.055632 +0.000000 +1447.243804
+
+
+ --------------------------------------------
+ !FINAL_ETOT_IS -219.8623721410366443 eV
+ --------------------------------------------
+
+
+
+
+
+
+ |CLASS_NAME---------|NAME---------------|TIME(Sec)-----|CALLS----|AVG------|PER%-------
+ total +75.201 15 +5.01 +100.00 %
+ Run_pw plane_wave_line +75.18 1 +75.18 +99.97 %
+ PW_Basis gen_pw +0.28 1 +0.28 +0.37 %
+ Run_MD_PW md_cells_pw +74.83 1 +74.83 +99.51 %
+ ppcell_vl init_vloc +3.95 1 +3.95 +5.25 %
+ Potential init_pot +0.79 4 +0.20 +1.05 %
+ FFT FFT3D +28.10 8433 +0.00 +37.37 %
+ Charge atomic_rho +2.57 7 +0.37 +3.42 %
+ Potential v_of_rho +3.44 34 +0.10 +4.57 %
+ H_XC_pw v_xc +3.23 37 +0.09 +4.29 %
+ H_Hartree_pw v_hartree +0.42 34 +0.01 +0.56 %
+ wavefunc wfcinit +1.09 4 +0.27 +1.45 %
+ pp_cell_vnl getvnl +0.15 40 +0.00 +0.20 %
+ Hamilt_PW diagH_subspace +3.43 34 +0.10 +4.56 %
+ Hamilt_PW h_psi +29.25 3312 +0.01 +38.89 %
+ Hamilt_PW vloc +26.78 3312 +0.01 +35.61 %
+ Hamilt_PW vnl +2.38 3312 +0.00 +3.16 %
+ Hamilt_PW add_nonlocal_pp +1.01 3312 +0.00 +1.34 %
+ Run_MD_PW md_ions_pw +70.11 1 +70.11 +93.22 %
+ Electrons self_consistent +60.10 3 +20.03 +79.92 %
+ Electrons c_bands +31.03 30 +1.03 +41.27 %
+ Hamilt diagH_pw +30.90 30 +1.03 +41.09 %
+ Diago_CG diag +27.87 32 +0.87 +37.06 %
+ Charge sum_band +2.85 30 +0.10 +3.79 %
+ Charge rho_mpi +1.04 30 +0.03 +1.39 %
+ Charge mix_rho +0.97 30 +0.03 +1.29 %
+ Forces cal_force_nl +0.24 3 +0.08 +0.32 %
+ Stress_PW cal_stress +3.15 3 +1.05 +4.19 %
+ Stress_Func stress_ew +22.56 2 +11.28 +29.99 %
+ Force_Func stress_ew +22.55 2 +11.28 +29.99 %
+ Stress_Func stress_gga +0.13 3 +0.04 +0.17 %
+ Stress_Func stress_loc +1.37 3 +0.46 +1.82 %
+ Stress_Func stres_nl +1.54 3 +0.51 +2.05 %
+ ----------------------------------------------------------------------------------------
+
+ CLASS_NAME---------|NAME---------------|MEMORY(MB)--------
+ +71.1170
+ Charge_Pulay Rrho +13.1836
+ Charge_Pulay dRrho +11.5356
+ Charge_Pulay drho +11.5356
+ Use_FFT porter +3.2959
+ PW_Basis struc_fac +2.6757
+ wavefunc evc +2.3411
+ Charge rho +1.6479
+ Charge rho_save +1.6479
+ Charge rho_core +1.6479
+ Potential vltot +1.6479
+ Potential vr +1.6479
+ Potential vr_eff +1.6479
+ Potential vr_eff1 +1.6479
+ Potential vnew +1.6479
+ Charge_Pulay rho_save2 +1.6479
+ ----------------------------------------------------------
+
+ Start Time : Fri Nov 12 18:16:22 2021
+ Finish Time : Fri Nov 12 18:17:37 2021
+ Total Time : 0 h 1 mins 15 secs
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/STRU b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/STRU
new file mode 100644
index 000000000..07964f6fe
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000001/STRU
@@ -0,0 +1,25 @@
+ATOMIC_SPECIES
+H 1.008 H_ONCV_PBE-1.0.upf
+C 12.010 C_ONCV_PBE-1.0.upf
+
+LATTICE_CONSTANT
+1.8897261254578281
+
+LATTICE_VECTORS
+9.706914371019787 0.0 0.0
+-0.2813826030727322 9.684068712553056 0.0
+0.1582462664821918 -0.16381766835153533 9.582973858264781
+
+ATOMIC_POSITIONS
+Cartesian # Cartesian(Unit is LATTICE_CONSTANT)
+H
+0.0
+4
+5.096428397218 3.892435586573 3.461810245711 1 1 1
+3.799158121761 4.554674552629 4.165563541923 1 1 1
+5.223899470809 5.330330533668 4.211137245440 1 1 1
+5.005416874557 3.981655544542 5.086650081968 1 1 1
+C
+0.0
+1
+4.779871851926 4.438976241080 4.227727834445 1 1 1
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/INPUT b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/INPUT
new file mode 100644
index 000000000..c3181c397
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/INPUT
@@ -0,0 +1,20 @@
+INPUT_PARAMETERS
+
+calculation md
+atom_file STRU
+kpoint_file KPT
+pseudo_dir ./
+ntype 2
+symmetry 1
+ecutwfc 90
+
+npool 1
+
+mixing_type pulay
+mixing_beta 0.4
+
+nstep 3
+force_thr_ev 0.02
+#move_method cg
+out_stru 0
+stress 1
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/INPUT b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/INPUT
new file mode 100644
index 000000000..63bd0ed40
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/INPUT
@@ -0,0 +1,263 @@
+INPUT_PARAMETERS
+#Parameters (1.General)
+suffix ABACUS #the name of main output directory
+latname test #the name of lattice name
+atom_file STRU #the filename of file containing atom positions
+kpoint_file KPT #the name of file containing k points
+pseudo_dir .// #the directory containing pseudo files
+orbital_dir #the directory containing orbital files
+pseudo_type auto #the type pseudo files
+pseudo_rcut 15 #cut-off radius for radial integration
+renormwithmesh 0 #0: use our own mesh to do radial renormalization; 1: use mesh as in QE
+lmaxmax 2 #maximum of l channels used
+dft_functional none #exchange correlation functional
+calculation md #test; scf; relax; nscf; ienvelope; istate;
+ntype 2 #atom species number
+nspin 1 #1: single spin; 2: up and down spin; 4: noncollinear spin
+nbands 0 #number of bands
+nbands_sto 0 #number of stochastic bands
+nbands_istate 5 #number of bands around Fermi level for istate calulation
+nche_sto 0 #number of orders for Chebyshev expansion in stochastic DFT
+symmetry 0 #turn symmetry on or off
+set_vel 0 #read velocity from STRU or not
+symmetry_prec 1e-05 #accuracy for symmetry
+nelec 0 #input number of electrons
+tot_magnetization 0 #total magnetization of the system
+
+#Parameters (2.PW)
+ecutwfc 90 ##energy cutoff for wave functions
+diago_cg_maxiter 50 #max iteration number for cg
+diago_cg_prec 1 #diago_cg_prec
+ethr 0.01 #threshold for eigenvalues is cg electron iterations
+dr2 1e-09 #charge density error
+start_wfc atomic #start wave functions are from 'atomic' or 'file'
+start_charge atomic #start charge is from 'atomic' or file
+charge_extrap atomic #atomic; first-order; second-order; dm:coefficients of SIA
+out_charge 0 #>0 output charge density for selected electron steps
+out_potential 0 #output realspace potential
+out_wf 0 #output wave functions
+out_dos 0 #output energy and dos
+out_band 0 #output energy and band structure
+restart_save 0 #print to disk every step for restart
+restart_load 0 #restart from disk
+read_file_dir auto #directory of files for reading
+nx 0 #number of points along x axis for FFT grid
+ny 0 #number of points along y axis for FFT grid
+nz 0 #number of points along z axis for FFT grid
+cell_factor 1.2 #used in the construction of the pseudopotential tables
+
+#Parameters (3.Relaxation)
+ks_solver cg #cg; dav; lapack; genelpa; hpseps; scalapack_gvx
+niter 40 ##number of electron iterations
+force_set 0 #output the force_set or not
+nstep 3 #number of ion iteration steps
+out_stru 0 #output the structure files after each ion step
+force_thr 0.00077787 #force threshold, unit: Ry/Bohr
+force_thr_ev 0.02 #force threshold, unit: eV/Angstrom
+force_thr_ev2 0 #force invalid threshold, unit: eV/Angstrom
+cg_threshold 0.5 #threshold for switching from cg to bfgs, unit: eV/Angstrom
+stress_thr 0.01 #stress threshold
+press1 0 #target pressure, unit: KBar
+press2 0 #target pressure, unit: KBar
+press3 0 #target pressure, unit: KBar
+bfgs_w1 0.01 #wolfe condition 1 for bfgs
+bfgs_w2 0.5 #wolfe condition 2 for bfgs
+trust_radius_max 0.8 #maximal trust radius, unit: Bohr
+trust_radius_min 1e-05 #minimal trust radius, unit: Bohr
+trust_radius_ini 0.5 #initial trust radius, unit: Bohr
+stress 1 #calculate the stress or not
+fixed_axes None #which axes are fixed
+move_method cg #bfgs; sd; cg; cg_bfgs;
+out_level m #ie(for electrons); i(for ions);
+out_dm 0 #>0 output density matrix
+out_descriptor 0 #>0 compute descriptor for deepks
+lmax_descriptor 2 #>0 lmax used in descriptor for deepks
+
+#Parameters (4.LCAO)
+basis_type pw #PW; LCAO in pw; LCAO
+new_dm 1 #Type of density matrix; 0: old 1: new
+search_radius -1 #input search radius (Bohr)
+search_pbc 1 #input periodic boundary condition
+lcao_ecut 0 #energy cutoff for LCAO
+lcao_dk 0.01 #delta k for 1D integration in LCAO
+lcao_dr 0.01 #delta r for 1D integration in LCAO
+lcao_rmax 30 #max R for 1D two-center integration table
+out_hs 0 #output H and S matrix
+out_hs2 0 #output H(R) and S(R) matrix
+out_r 0 #output r(R) matrix
+out_lowf 0 #ouput LCAO wave functions
+bx 1 #division of an element grid in FFT grid along x
+by 1 #division of an element grid in FFT grid along y
+bz 1 #division of an element grid in FFT grid along z
+
+#Parameters (5.Smearing)
+smearing fixed #type of smearing: gauss; fd; fixed; mp; mp2; mv
+sigma 0.01 #energy range for smearing
+
+#Parameters (6.Charge Mixing)
+mixing_type pulay #plain; kerker; pulay; pulay-kerker; broyden
+mixing_beta 0.4 #mixing parameter: 0 means no new charge
+mixing_ndim 8 #mixing dimension in pulay
+mixing_gg0 0 #mixing parameter in kerker
+
+#Parameters (7.DOS)
+dos_emin_ev -15 #minimal range for dos
+dos_emax_ev 15 #maximal range for dos
+dos_edelta_ev 0.01 #delta energy for dos
+dos_scale 0.01 #scale dos range by
+dos_sigma 0.07 #gauss b coefficeinet(default=0.07)
+
+#Parameters (8.Technique)
+gamma_only 0 #gamma only, only used in LCAO basis
+diago_proc 8 #number of proc used to diago
+npool 1 #number of pools for k points, pw only
+mem_saver 0 #memory saver for many k points used
+printe 100 #print band energy for selectively ionic steps
+
+#Parameters (9.SIAO)
+selinv_npole 40 #number of selected poles
+selinv_temp 2000 #temperature for Fermi-Dirac distribution
+selinv_gap 0 #supposed gap in the calculation
+selinv_deltae 2 #expected energy range
+selinv_mu -1 #chosen mu as Fermi energy
+selinv_threshold 0.001 #threshold for calculated electron number
+selinv_niter 50 #max number of steps to update mu
+
+#Parameters (10.Molecular dynamics)
+md_mdtype 1 #choose ensemble
+md_potential FP #choose potential
+md_dt 1 #time step
+mnhc 4 #number of Nose-Hoover chains
+md_qmass 1 #mass of thermostat
+md_tfirst 0 #temperature first
+md_tlast 0 #temperature last
+md_dumpmdfred 1 #The period to dump MD information for monitoring and restarting MD
+md_mdoutpath mdoutput #output path of md
+md_rstmd 0 #whether restart
+md_fixtemperature 1 #period to change temperature
+md_ediff 0.0001 #parameter for constraining total energy change
+md_ediffg 0.001 #parameter for constraining max force change
+NVT_tau 0 #parameter for adjust effect of thermostat
+NVT_control 1 #choose which thermostat used in NVT ensemble
+rcut_lj 8.5 #cutoff radius of LJ potential
+epsilon_lj 0.01032 #the value of epsilon for LJ potential
+sigma_lj 3.405 #the value of sigma for LJ potential
+
+#Parameters (11.Efield)
+efield 0 #add electric field
+edir 1 #add electric field
+emaxpos 0.5 #maximal position of efield [0,1)
+eopreg 0.1 #where sawlike potential decrease
+eamp 0.001 #amplitute of the efield, unit is a.u.
+eamp_v 0.05144 #amplitute of the efield, unit is V/A
+
+#Parameters (12.Test)
+out_alllog 0 #output information for each processor, when parallel
+nurse 0 #for coders
+colour 0 #for coders, make their live colourful
+t_in_h 1 #calculate the kinetic energy or not
+vl_in_h 1 #calculate the local potential or not
+vnl_in_h 1 #calculate the nonlocal potential or not
+vh_in_h 1 #calculate the hartree potential or not
+vxc_in_h 1 #calculate the xc potential or not
+vion_in_h 1 #calculate the local ionic potential or not
+test_force 0 #test the force
+test_stress 0 #test the force
+
+#Parameters (13.Other Methods)
+mlwf_flag 0 #turn MLWF on or off
+opt_epsilon2 0 #calculate the dielectic function
+opt_nbands 0 #number of bands for optical calculation
+
+#Parameters (14.VdW Correction)
+vdw_method none #the method of calculating vdw (none ; d2 ; d3_0 ; d3_bj
+vdw_s6 default #scale parameter of d2/d3_0/d3_bj
+vdw_s8 default #scale parameter of d3_0/d3_bj
+vdw_a1 default #damping parameter of d3_0/d3_bj
+vdw_a2 default #damping parameter of d3_bj
+vdw_d 20 #damping parameter of d2
+vdw_abc 0 #third-order term?
+vdw_C6_file default #filename of C6
+vdw_C6_unit Jnm6/mol #unit of C6, Jnm6/mol or eVA6
+vdw_R0_file default #filename of R0
+vdw_R0_unit A #unit of R0, A or Bohr
+vdw_model radius #expression model of periodic structure, radius or period
+vdw_radius default #radius cutoff for periodic structure
+vdw_radius_unit Bohr #unit of radius cutoff for periodic structure
+vdw_cn_thr 40 #radius cutoff for cn
+vdw_cn_thr_unit Bohr #unit of cn_thr, Bohr or Angstrom
+vdw_period 3 3 3 #periods of periodic structure
+
+#Parameters (15.spectrum)
+spectral_type None #the type of the calculated spectrum
+spectral_method 0 #0: tddft(linear response)
+kernel_type rpa #the kernel type: rpa, tdlda ...
+eels_method 0 #0: hilbert_transform method; 1: standard method
+absorption_method 0 #0: vasp's method 1: pwscf's method
+system bulk #the calculate system
+eta 0.05 #eta(Ry)
+domega 0.01 #domega(Ry)
+nomega 300 #nomega
+ecut_chi 1 #the dimension of chi matrix
+q_start 0.1 0.1 0.1 #the position of the first q point in direct coordinate
+q_direction 1 0 0 #the q direction
+nq 1 #the total number of qpoints for calculation
+out_epsilon 1 #output epsilon or not
+out_chi 0 #output chi or not
+out_chi0 0 #output chi0 or not
+fermi_level 0 #the change of the fermi_level(Ry)
+coulomb_cutoff 0 # turn on the coulomb_cutoff or not
+kmesh_interpolation 0 #calculting
+qcar 0 0 0 #(unit: 2PI/lat0)
+ocp 0 #change occupation or not
+ocp_set none #set occupation
+lcao_box 10 10 10 #the scale for searching the existence of the overlap
+ mulliken 0 # mulliken charge or not
+intrasmear 0 #Eta
+shift 0 #shift
+metalcalc 0 #metal or not
+eps_degauss 0.01 #degauss in calculating epsilon0
+noncolin 0 #using non-collinear-spin
+lspinorb 0 #consider the spin-orbit interaction
+
+#Parameters (17.exx)
+exx_hybrid_type no #no, hf, pbe0, hse or opt_orb
+exx_hybrid_alpha 0.25 #
+exx_hse_omega 0.11 #
+exx_separate_loop 1 #0 or 1
+exx_hybrid_step 100 #
+exx_lambda 0.3 #
+exx_pca_threshold 0 #
+exx_c_threshold 0 #
+exx_v_threshold 0 #
+exx_dm_threshold 0 #
+exx_schwarz_threshold0 #
+exx_cauchy_threshold0 #
+exx_ccp_threshold 1e-08 #
+exx_ccp_rmesh_times 10 #
+exx_distribute_type htime #htime or kmeans1 or kmeans2
+exx_opt_orb_lmax 0 #
+exx_opt_orb_ecut 0 #
+exx_opt_orb_tolerence0 #
+
+#Parameters (17.tddft)
+tddft 0 #calculate tddft or not
+td_dr2 1e-09 #threshold for electronic iteration of tddft
+td_dt 0.02 #time of ion step
+td_force_dt 0.02 #time of force change
+td_val_elec_01 1 #td_val_elec_01
+td_val_elec_02 1 #td_val_elec_02
+td_val_elec_03 1 #td_val_elec_03
+td_vext 0 #add extern potential or not
+td_vext_dire 1 #extern potential direction
+td_timescale 0.5 #extern potential td_timescale
+td_vexttype 1 #extern potential type
+td_vextout 0 #output extern potential or not
+td_dipoleout 0 #output dipole or not
+
+#Parameters (18.berry_wannier)
+berry_phase 0 #calculate berry phase or not
+gdir 3 #calculate the polarization in the direction of the lattice std::vector
+towannier90 0 #use wannier90 code interface or not
+nnkpfile seedname.nnkp #the wannier90 code nnkp file name
+wannier_spin up #calculate spin in wannier90 code interface
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/STRU_MD b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/STRU_MD
new file mode 100644
index 000000000..f42357382
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/STRU_MD
@@ -0,0 +1,27 @@
+ATOMIC_SPECIES
+H 1.008 H_ONCV_PBE-1.0.upf
+C 12.01 C_ONCV_PBE-1.0.upf
+
+LATTICE_CONSTANT
+1.88972612546
+
+LATTICE_VECTORS
+9.27069258481 0 0 #latvec1
+0.0128238456952 9.56209520274 0 #latvec2
+0.169560774735 -0.0300305282636 9.58609795568 #latvec3
+
+ATOMIC_POSITIONS
+Direct
+
+H #label
+0 #magnetism
+4 #number of atoms
+0.547461705223 0.400166750312 0.349585199322 1 1 1 0 0 0
+0.387154932277 0.478943964961 0.433851040704 1 1 1 0 0 0
+0.560703231408 0.571623190735 0.438580636423 1 1 1 0 0 0
+0.532932139137 0.411873023092 0.541312594704 1 1 1 0 0 0
+
+C #label
+0 #magnetism
+1 #number of atoms
+0.507726212428 0.465642779417 0.440714011322 1 1 1 0 0 0
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/STRU_READIN_ADJUST.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/STRU_READIN_ADJUST.cif
new file mode 100644
index 000000000..6d8352991
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/STRU_READIN_ADJUST.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.27069
+_cell_length_b 9.5621
+_cell_length_c 9.58764
+_cell_angle_alpha 90.1781
+_cell_angle_beta 88.9867
+_cell_angle_gamma 89.9232
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.542192 0.408202 0.360768
+H 0.401673 0.477208 0.434698
+H 0.554241 0.559124 0.439031
+H 0.529933 0.417895 0.530426
+C 0.507735 0.465662 0.44058
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/md_pos_1.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/md_pos_1.cif
new file mode 100644
index 000000000..bd632634b
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/md_pos_1.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.27069
+_cell_length_b 9.5621
+_cell_length_c 9.58764
+_cell_angle_alpha 90.1781
+_cell_angle_beta 88.9867
+_cell_angle_gamma 89.9232
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.543005 0.406936 0.359006
+H 0.399395 0.477474 0.434569
+H 0.555241 0.561082 0.43897
+H 0.530384 0.416975 0.532107
+C 0.507737 0.465659 0.440603
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/md_pos_2.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/md_pos_2.cif
new file mode 100644
index 000000000..724fd225e
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/md_pos_2.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.27069
+_cell_length_b 9.5621
+_cell_length_c 9.58764
+_cell_angle_alpha 90.1781
+_cell_angle_beta 88.9867
+_cell_angle_gamma 89.9232
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.545037 0.403807 0.354649
+H 0.393743 0.47814 0.434243
+H 0.55774 0.565945 0.438806
+H 0.53153 0.414656 0.536324
+C 0.507736 0.465651 0.440656
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/md_pos_3.cif b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/md_pos_3.cif
new file mode 100644
index 000000000..659d52e66
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/md_pos_3.cif
@@ -0,0 +1,24 @@
+data_test
+
+_audit_creation_method generated by ABACUS
+
+_cell_length_a 9.27069
+_cell_length_b 9.5621
+_cell_length_c 9.58764
+_cell_angle_alpha 90.1781
+_cell_angle_beta 88.9867
+_cell_angle_gamma 89.9232
+
+_symmetry_space_group_name_H-M
+_symmetry_Int_Tables_number
+
+loop_
+_atom_site_label
+_atom_site_fract_x
+_atom_site_fract_y
+_atom_site_fract_z
+H 0.547462 0.400167 0.349585
+H 0.387155 0.478944 0.433851
+H 0.560703 0.571623 0.438581
+H 0.532932 0.411873 0.541313
+C 0.507726 0.465643 0.440714
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/running_md.log b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/running_md.log
new file mode 100644
index 000000000..2a1ad64a8
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/OUT.ABACUS/running_md.log
@@ -0,0 +1,701 @@
+
+ WELCOME TO ABACUS
+
+ 'Atomic-orbital Based Ab-initio Computation at UStc'
+
+ Website: http://abacus.ustc.edu.cn/
+
+ Version: Parallel, in development
+ Processor Number is 8
+ Start Time is Fri Nov 12 18:17:38 2021
+
+ ------------------------------------------------------------------------------------
+
+ READING GENERAL INFORMATION
+ global_out_dir = OUT.ABACUS/
+ global_in_card = INPUT
+ pseudo_dir =
+ orbital_dir =
+ pseudo_type = auto
+ DRANK = 1
+ DSIZE = 8
+ DCOLOR = 1
+ GRANK = 1
+ GSIZE = 1
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Reading atom information in unitcell: |
+ | From the input file and the structure file we know the number of |
+ | different elments in this unitcell, then we list the detail |
+ | information for each element, especially the zeta and polar atomic |
+ | orbital number for each element. The total atom number is counted. |
+ | We calculate the nearest atom distance for each atom and show the |
+ | Cartesian and Direct coordinates for each atom. We list the file |
+ | address for atomic orbitals. The volume and the lattice vectors |
+ | in real and reciprocal space is also shown. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+ READING UNITCELL INFORMATION
+ ntype = 2
+ atom label for species 1 = H
+ atom label for species 2 = C
+ lattice constant (Bohr) = 1.88973
+ lattice constant (Angstrom) = 1
+
+ READING ATOM TYPE 1
+ atom label = H
+ L=0, number of zeta = 1
+ L=1, number of zeta = 1
+ L=2, number of zeta = 1
+ number of atom for this type = 4
+ start magnetization = FALSE
+ start magnetization = FALSE
+ start magnetization = FALSE
+ start magnetization = FALSE
+
+ READING ATOM TYPE 2
+ atom label = C
+ L=0, number of zeta = 1
+ L=1, number of zeta = 1
+ L=2, number of zeta = 1
+ number of atom for this type = 1
+ start magnetization = FALSE
+
+ TOTAL ATOM NUMBER = 5
+
+ CARTESIAN COORDINATES ( UNIT = 1.88973 Bohr ).
+ atom x y z mag vx vy vz
+ tauc_H1 5.09290605164 3.89242871555 3.45835777937 0 0 0 0
+ tauc_H2 3.80361094208 4.55005711875 4.16705754763 0 0 0 0
+ tauc_H3 5.21981288147 5.33321039636 4.20859510266 0 0 0 0
+ tauc_H4 5.00814830724 3.9800234484 5.08471194545 0 0 0 0
+ tauc_C1 4.78773457902 4.43947390549 4.22344175994 0 0 0 0
+
+
+ Volume (Bohr^3) = 5734.60762332
+ Volume (A^3) = 849.780160031
+
+ Lattice vectors: (Cartesian coordinate: in unit of a_0)
+ +9.27069258481 +0 +0
+ +0.0128238456952 +9.56209520274 +0
+ +0.169560774735 -0.0300305282636 +9.58609795568
+ Reciprocal vectors: (Cartesian coordinate: in unit of 2 pi/a_0)
+ +0.107866806158 -0.000144661525376 -0.001908422339
+ -0 +0.104579590435 +0.000327618219725
+ +0 +0 +0.104317732264
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Reading pseudopotentials files: |
+ | The pseudopotential file is in UPF format. The 'NC' indicates that |
+ | the type of pseudopotential is 'norm conserving'. Functional of |
+ | exchange and correlation is decided by 4 given parameters in UPF |
+ | file. We also read in the 'core correction' if there exists. |
+ | Also we can read the valence electrons number and the maximal |
+ | angular momentum used in this pseudopotential. We also read in the |
+ | trail wave function, trail atomic density and local-pseudopotential|
+ | on logrithmic grid. The non-local pseudopotential projector is also|
+ | read in if there is any. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+ PAO radial cut off (Bohr) = 15
+
+ Read in pseudopotential file is H_ONCV_PBE-1.0.upf
+ pseudopotential type = NC
+ functional Ex = PBE
+ functional Ec =
+ functional GCEx =
+ functional GCEc =
+ nonlocal core correction = 0
+ valence electrons = 1
+ lmax = 0
+ number of zeta = 0
+ number of projectors = 2
+ L of projector = 0
+ L of projector = 0
+ PAO radial cut off (Bohr) = 15
+
+ Read in pseudopotential file is C_ONCV_PBE-1.0.upf
+ pseudopotential type = NC
+ functional Ex = PBE
+ functional Ec =
+ functional GCEx =
+ functional GCEc =
+ nonlocal core correction = 0
+ valence electrons = 4
+ lmax = 1
+ number of zeta = 0
+ number of projectors = 4
+ L of projector = 0
+ L of projector = 0
+ L of projector = 1
+ L of projector = 1
+ initial pseudo atomic orbital number = 0
+ NLOCAL = 45
+
+ SETUP THE ELECTRONS NUMBER
+ electron number of element H = 1
+ total electron number of element H = 4
+ electron number of element C = 4
+ total electron number of element C = 4
+ occupied bands = 4
+ NBANDS = 14
+ DONE : SETUP UNITCELL Time : 0.0822040801286 (SEC)
+
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Setup K-points |
+ | We setup the k-points according to input parameters. |
+ | The reduced k-points are set according to symmetry operations. |
+ | We treat the spin as another set of k-points. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+
+ SETUP K-POINTS
+ nspin = 1
+ Input type of k points = Monkhorst-Pack(Gamma)
+ nkstot = 1
+
+ KPOINTS DIRECT_X DIRECT_Y DIRECT_Z WEIGHT
+ 1 0 0 0 1
+
+ k-point number in this process = 1
+ minimum distributed K point number = 1
+
+ KPOINTS CARTESIAN_X CARTESIAN_Y CARTESIAN_Z WEIGHT
+ 1 0 0 0 2
+
+ KPOINTS DIRECT_X DIRECT_Y DIRECT_Z WEIGHT
+ 1 0 0 0 2
+ DONE : INIT K-POINTS Time : 0.0836835908704 (SEC)
+
+
+
+
+
+ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ | |
+ | Setup plane waves: |
+ | Use the energy cutoff and the lattice vectors to generate the |
+ | dimensions of FFT grid. The number of FFT grid on each processor |
+ | is 'nrxx'. The number of plane wave basis in reciprocal space is |
+ | different for charege/potential and wave functions. We also set |
+ | the 'sticks' for the parallel of FFT. |
+ | |
+ <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
+
+
+
+
+
+ SETUP THE PLANE WAVE BASIS
+ energy cutoff for wavefunc (unit:Ry) = 90
+ [fft grid for wave functions] = 108, 120, 120
+ [fft grid for charge/potential] = 108, 120, 120
+ [fft grid division] = 1, 1, 1
+ [big fft grid for charge/potential] = 108, 120, 120
+ nbxx = 194400
+ nrxx = 194400
+
+ SETUP PLANE WAVES FOR CHARGE/POTENTIAL
+ number of plane waves = 661353
+ number of sticks = 9057
+
+ SETUP PLANE WAVES FOR WAVE FUNCTIONS
+ number of plane waves = 82689
+ number of sticks = 2267
+
+ PARALLEL PW FOR CHARGE/POTENTIAL
+ PROC COLUMNS(POT) PW
+ 1 1132 82670
+ 2 1132 82669
+ 3 1132 82669
+ 4 1132 82669
+ 5 1132 82669
+ 6 1132 82669
+ 7 1133 82669
+ 8 1132 82669
+ --------------- sum -------------------
+ 8 9057 661353
+
+ PARALLEL PW FOR WAVE FUNCTIONS
+ PROC COLUMNS(W) PW
+ 1 284 10334
+ 2 283 10336
+ 3 283 10338
+ 4 281 10335
+ 5 285 10338
+ 6 285 10336
+ 7 282 10334
+ 8 284 10338
+ --------------- sum -------------------
+ 8 2267 82689
+
+ SETUP COORDINATES OF PLANE WAVES
+ number of total plane waves = 661353
+
+ SETUP COORDINATES OF PLANE WAVES
+ number of |g| = 79694
+ max |g| = 32.5641662388
+ min |g| = 0
+ DONE : INIT PLANEWAVE Time : 0.336783995619 (SEC)
+
+ npwx = 10334
+
+ SETUP NONLOCAL PSEUDOPOTENTIALS IN PLANE WAVE BASIS
+ H non-local projectors:
+ projector 1 L=0
+ projector 2 L=0
+ C non-local projectors:
+ projector 1 L=0
+ projector 2 L=0
+ projector 3 L=1
+ projector 4 L=1
+ TOTAL NUMBER OF NONLOCAL PROJECTORS = 16
+ DONE : LOCAL POTENTIAL Time : 4.04769805988 (SEC)
+
+
+ Init Non-Local PseudoPotential table :
+ Init Non-Local-Pseudopotential done.
+ DONE : NON-LOCAL POTENTIAL Time : 4.05365722452 (SEC)
+
+ start_pot = atomic
+ DONE : INIT POTENTIAL Time : 4.48892 (SEC)
+
+
+ Make real space PAO into reciprocal space.
+ max mesh points in Pseudopotential = 601
+ dq(describe PAO in reciprocal space) = 0.01
+ max q = 1143
+
+ number of pseudo atomic orbitals for H is 0
+
+ number of pseudo atomic orbitals for C is 0
+ DONE : INIT BASIS Time : 4.74304 (SEC)
+
+ ...............Nose-Hoover Chain parameter initialization...............
+ Temperature = 0
+ Temperature2 = 0
+ NHC frequency = 0.00120944
+ NHC chain = 4
+ Qmass = 1822.89
+ ...............................................................
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 1--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 10.000000 1.100000
+
+ Density error is 0.960510453558
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 2--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 2.285714 0.310000
+
+ Density error is 0.098733734228
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 3--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 4.071429 0.500000
+
+ Density error is 0.029156016548
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 4--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 3.714286 0.450000
+
+ Density error is 0.157357850345
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 5--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 3.142857 0.390000
+
+ Density error is 0.000022976111
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 6--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 8.785714 0.970000
+
+ Density error is 0.000027903812
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 7--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 4.357143 0.530000
+
+ Density error is 0.000007318066
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 8--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 5.000000 0.590000
+
+ Density error is 0.000000148874
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 9--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 6.428571 0.730000
+
+ Density error is 0.000000001372
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 10--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 7.714286 0.860000
+
+ Density error is 0.000000001003
+
+ PW ALGORITHM --------------- ION= 1 ELEC= 11--------------------------------
+ K-point CG iter num Time(Sec)
+ 1 7.785714 0.880000
+
+ Density error is 0.000000000059
+
+ charge density convergence is achieved
+ final etot is -219.118728218927 eV
+
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-FORCE (eV/Angstrom)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ atom x y z
+ H1 +1.508322 -2.517782 -3.530747
+ H2 -4.418462 +0.530736 -0.259007
+ H3 +1.940423 +3.914120 -0.121649
+ H4 +0.930235 -1.848593 +3.369226
+ C1 +0.039482 -0.078480 +0.542177
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-STRESS (KBAR)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ +11.019212 -0.012921 -0.249753
+ -0.012921 +10.888803 +0.464085
+ -0.249753 +0.464085 +10.579625
+
+output Pressure for check!
+Virtual Pressure is +21.658426 Kbar
+Virial Term is +21.658426 Kbar
+Kenetic Term is +0.000000 Kbar
+
+ --------------------------------------------------
+ Molecular Dynamics (NVT) STEP 1
+ --------------------------------------------------
+--------------------------------------------------
+ SUMMARY OF NVT CALCULATION
+ --------------------------------------------------
+ NVT Conservation : -16.104924 (Rydberg)
+ NVT Temperature : +0.000000 (K)
+ NVT Kinetic energy : +0.000000 (Rydberg)
+ NVT Potential energy : -16.104924 (Rydberg)
+ maxForce : +0.007972
+ maxStep : +0.041509
+ MD_STEP SystemE Conserved DeltaE Temperature
+ +1 -8.052462 -8.052462 +0.000000 +175.027577
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+1 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +55.142857 +5.680000
+
+ Density error is +0.003488598323
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+2 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.214286 +0.300000
+
+ Density error is +0.000064088512
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+3 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.071429 +0.480000
+
+ Density error is +0.000016147980
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+4 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +3.214286 +0.410000
+
+ Density error is +0.000001278683
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+5 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +5.071429 +0.600000
+
+ Density error is +0.000000184850
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+6 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +3.214286 +0.410000
+
+ Density error is +0.000000013531
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+7 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +5.285714 +0.610000
+
+ Density error is +0.000000010165
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+8 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.000000 +0.290000
+
+ Density error is +0.000000003623
+
+ PW ALGORITHM --------------- ION=+2 ELEC=+9 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.928571 +0.370000
+
+ Density error is +0.000000000004
+
+ charge density convergence is achieved
+ final etot is -219.434191715312 eV
+
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-FORCE (eV/Angstrom)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ atom x y z
+ H1 +1.133157 -1.856662 -2.608308
+ H2 -3.288841 +0.401876 -0.196306
+ H3 +1.454909 +2.915560 -0.103398
+ H4 +0.716634 -1.407419 +2.547272
+ C1 -0.015860 -0.053356 +0.360740
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-STRESS (KBAR)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ +8.401340 -0.025640 -0.170148
+ -0.025640 +8.286073 +0.280673
+ -0.170148 +0.280673 +8.068639
+
+output Pressure for check!
+Virtual Pressure is +16.617778 Kbar
+Virial Term is +16.504034 Kbar
+Kenetic Term is +0.113744 Kbar
+
+ --------------------------------------------------
+ Molecular Dynamics (NVT) STEP 2
+ --------------------------------------------------
+--------------------------------------------------
+ SUMMARY OF NVT CALCULATION
+ --------------------------------------------------
+ NVT Conservation : -16.107810 (Rydberg)
+ NVT Temperature : +533.989848 (K)
+ NVT Kinetic energy : +0.020293 (Rydberg)
+ NVT Potential energy : -16.128110 (Rydberg)
+ maxForce : +0.004362
+ maxStep : +0.102614
+ MD_STEP SystemE Conserved DeltaE Temperature
+ +2 -8.064055 -8.053905 +0.000000 +1078.821137
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+1 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +53.785714 +5.530000
+
+ Density error is +0.019612648889
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+2 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.214286 +0.300000
+
+ Density error is +0.000290072895
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+3 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.142857 +0.490000
+
+ Density error is +0.000099169017
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+4 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.714286 +0.350000
+
+ Density error is +0.000008092362
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+5 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.428571 +0.530000
+
+ Density error is +0.000001211193
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+6 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +3.357143 +0.420000
+
+ Density error is +0.000000051304
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+7 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +5.500000 +0.630000
+
+ Density error is +0.000000007503
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+8 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.857143 +0.580000
+
+ Density error is +0.000000014633
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+9 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +2.214286 +0.300000
+
+ Density error is +0.000000002243
+
+ PW ALGORITHM --------------- ION=+3 ELEC=+10 --------------------------------
+ K-point CG iter num Time(Sec)
+ +1 +4.142857 +0.500000
+
+ Density error is +0.000000000398
+
+ charge density convergence is achieved
+ final etot is -219.861273145100 eV
+
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-FORCE (eV/Angstrom)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ atom x y z
+ H1 +0.370637 -0.522900 -0.745579
+ H2 -0.985036 +0.136881 -0.067108
+ H3 +0.457129 +0.867257 -0.061860
+ H4 +0.261706 -0.471416 +0.808625
+ C1 -0.104436 -0.009822 +0.065922
+
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ TOTAL-STRESS (KBAR)
+
+ ><><><><><><><><><><><><><><><><><><><><><><
+
+ +2.700073 -0.048954 -0.024676
+ -0.048954 +2.601966 -0.047102
+ -0.024676 -0.047102 +2.553528
+
+output Pressure for check!
+Virtual Pressure is +5.938130 Kbar
+Virial Term is +5.237045 Kbar
+Kenetic Term is +0.701085 Kbar
+
+ --------------------------------------------------
+ Molecular Dynamics (NVT) STEP 3
+ --------------------------------------------------
+--------------------------------------------------
+ SUMMARY OF NVT CALCULATION
+ --------------------------------------------------
+ NVT Conservation : -16.110343 (Rydberg)
+ NVT Temperature : +1283.993234 (K)
+ NVT Kinetic energy : +0.048794 (Rydberg)
+ NVT Potential energy : -16.159500 (Rydberg)
+ maxForce : +0.000376
+ maxStep : +0.119327
+ MD_STEP SystemE Conserved DeltaE Temperature
+ +3 -8.079750 -8.055171 +0.000000 +1471.487172
+
+
+ --------------------------------------------
+ !FINAL_ETOT_IS -219.8612731451002276 eV
+ --------------------------------------------
+
+
+
+
+
+
+ |CLASS_NAME---------|NAME---------------|TIME(Sec)-----|CALLS----|AVG------|PER%-------
+ total +68.402 15 +4.56 +100.00 %
+ Run_pw plane_wave_line +68.38 1 +68.38 +99.97 %
+ PW_Basis gen_pw +0.25 1 +0.25 +0.37 %
+ Run_MD_PW md_cells_pw +68.05 1 +68.05 +99.48 %
+ ppcell_vl init_vloc +3.69 1 +3.69 +5.39 %
+ Potential init_pot +0.71 4 +0.18 +1.04 %
+ FFT FFT3D +23.26 8449 +0.00 +34.00 %
+ Charge atomic_rho +2.26 7 +0.32 +3.31 %
+ Potential v_of_rho +3.00 34 +0.09 +4.38 %
+ H_XC_pw v_xc +2.82 37 +0.08 +4.13 %
+ H_Hartree_pw v_hartree +0.36 34 +0.01 +0.53 %
+ wavefunc wfcinit +0.99 4 +0.25 +1.44 %
+ pp_cell_vnl getvnl +0.14 40 +0.00 +0.20 %
+ Hamilt_PW diagH_subspace +2.84 34 +0.08 +4.15 %
+ Hamilt_PW h_psi +24.69 3320 +0.01 +36.09 %
+ Hamilt_PW vloc +22.48 3320 +0.01 +32.86 %
+ Hamilt_PW vnl +2.12 3320 +0.00 +3.10 %
+ Hamilt_PW add_nonlocal_pp +0.94 3320 +0.00 +1.37 %
+ Run_MD_PW md_ions_pw +63.66 1 +63.66 +93.06 %
+ Electrons self_consistent +54.24 3 +18.08 +79.30 %
+ Electrons c_bands +26.27 30 +0.88 +38.41 %
+ Hamilt diagH_pw +26.15 30 +0.87 +38.23 %
+ Diago_CG diag +23.65 32 +0.74 +34.57 %
+ Charge sum_band +2.40 30 +0.08 +3.50 %
+ Charge rho_mpi +0.91 30 +0.03 +1.33 %
+ Charge mix_rho +0.81 30 +0.03 +1.18 %
+ Forces cal_force_nl +0.22 3 +0.07 +0.33 %
+ Stress_PW cal_stress +3.14 3 +1.05 +4.59 %
+ Stress_Func stress_ew +20.85 2 +10.42 +30.48 %
+ Force_Func stress_ew +20.85 2 +10.42 +30.48 %
+ Stress_Func stress_gga +0.12 3 +0.04 +0.17 %
+ Stress_Func stress_loc +1.30 3 +0.43 +1.91 %
+ Stress_Func stres_nl +1.62 3 +0.54 +2.36 %
+ ----------------------------------------------------------------------------------------
+
+ CLASS_NAME---------|NAME---------------|MEMORY(MB)--------
+ +64.7285
+ Charge_Pulay Rrho +11.8652
+ Charge_Pulay dRrho +10.3821
+ Charge_Pulay drho +10.3821
+ Use_FFT porter +2.9663
+ PW_Basis struc_fac +2.5229
+ wavefunc evc +2.2076
+ Charge rho +1.4832
+ Charge rho_save +1.4832
+ Charge rho_core +1.4832
+ Potential vltot +1.4832
+ Potential vr +1.4832
+ Potential vr_eff +1.4832
+ Potential vr_eff1 +1.4832
+ Potential vnew +1.4832
+ Charge_Pulay rho_save2 +1.4832
+ ----------------------------------------------------------
+
+ Start Time : Fri Nov 12 18:17:38 2021
+ Finish Time : Fri Nov 12 18:18:46 2021
+ Total Time : 0 h 1 mins 8 secs
diff --git a/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/STRU b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/STRU
new file mode 100644
index 000000000..8bc79faf7
--- /dev/null
+++ b/tests/data/out_data_02_md_abacus/02.md/sys-0004-0001/scale-0.950/000002/STRU
@@ -0,0 +1,25 @@
+ATOMIC_SPECIES
+H 1.008 H_ONCV_PBE-1.0.upf
+C 12.010 C_ONCV_PBE-1.0.upf
+
+LATTICE_CONSTANT
+1.8897261254578281
+
+LATTICE_VECTORS
+9.270692584805424 0.0 0.0
+0.01282384569524753 9.562095202737858 0.0
+0.16956077473517553 -0.030030528263640357 9.586097955682344
+
+ATOMIC_POSITIONS
+Cartesian # Cartesian(Unit is LATTICE_CONSTANT)
+H
+0.0
+4
+5.092906051636 3.892428715541 3.458357779363 1 1 1
+3.803610942086 4.550057118756 4.167057547630 1 1 1
+5.219812881472 5.333210396361 4.208595102670 1 1 1
+5.008148307232 3.980023448407 5.084711945455 1 1 1
+C
+0.0
+1
+4.787734579020 4.439473905493 4.223441759937 1 1 1
diff --git a/tests/data/test_coll_abacus.py b/tests/data/test_coll_abacus.py
new file mode 100644
index 000000000..6a73b7233
--- /dev/null
+++ b/tests/data/test_coll_abacus.py
@@ -0,0 +1,63 @@
+import os,sys,json,glob,shutil
+import dpdata
+import numpy as np
+import unittest
+
+sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
+__package__ = 'data'
+from .context import coll_abacus_md
+from .context import out_dir_name
+from .context import abacus_param_file
+from .context import setUpModule
+
+class TestCollAbacus(unittest.TestCase):
+ def setUp(self):
+ with open (abacus_param_file, 'r') as fp :
+ jdata = json.load (fp)
+ self.odir = out_dir_name(jdata)
+ assert os.path.isdir('out_data_02_md_abacus'), 'out data for post fp vasp should exist'
+ if os.path.isdir(self.odir) :
+ shutil.rmtree(self.odir)
+ shutil.copytree('out_data_02_md_abacus', self.odir)
+ self.ref_coord = np.reshape(np.genfromtxt("abacus.out/coord.raw"), [9, 5, 3])
+ self.ref_cell = np.reshape(np.genfromtxt("abacus.out/box.raw"), [9, 3, 3])
+ self.ref_e = np.reshape(np.genfromtxt("abacus.out/energy.raw"), [9, ])
+ self.ref_f = np.reshape(np.genfromtxt("abacus.out/force.raw"), [9, 5, 3])
+ self.ref_v = np.reshape(np.genfromtxt("abacus.out/virial.raw"), [9, 3, 3])
+ def tearDown(self):
+ #print("escape.")
+ shutil.rmtree(self.odir)
+
+ def test_coll(self):
+
+ with open (abacus_param_file, 'r') as fp :
+ jdata = json.load (fp)
+ jdata['out_dir'] = self.odir
+ print(os.getcwd())
+ coll_abacus_md(jdata)
+
+ sys = dpdata.LabeledSystem(self.odir + '/02.md/sys-0004-0001/deepmd//', fmt = 'deepmd/raw')
+ self.assertEqual(sys.get_nframes(), 9)
+
+ for ff in range(9) :
+ self.assertAlmostEqual(self.ref_e[ff], sys.data['energies'][ff])
+ for ff in range(9) :
+ for ii in range(5) :
+ for dd in range(3) :
+ self.assertAlmostEqual(self.ref_coord[ff][ii][dd],
+ sys.data['coords'][ff][ii][dd])
+ self.assertAlmostEqual(self.ref_f[ff][ii][dd],
+ sys.data['forces'][ff][ii][dd])
+ for ff in range(9):
+ for ii in range(3) :
+ for jj in range(3) :
+ self.assertAlmostEqual(self.ref_v[ff][ii][jj],
+ sys.data['virials'][ff][ii][jj], places = 5)
+ self.assertAlmostEqual(self.ref_cell[ff][ii][jj],
+ sys.data['cells'][ff][ii][jj])
+
+if __name__ == '__main__':
+ unittest.main()
+
+
+
diff --git a/tests/data/test_coll_vasp.py b/tests/data/test_coll_vasp.py
index 716e67163..b13f99403 100644
--- a/tests/data/test_coll_vasp.py
+++ b/tests/data/test_coll_vasp.py
@@ -84,6 +84,8 @@ def test_coll(self):
self.assertAlmostEqual(ref_cell[ff][ii][jj],
sys.data['cells'][ff][ii][jj])
+if __name__ == '__main__':
+ unittest.main()
diff --git a/tests/data/test_gen_bulk.py b/tests/data/test_gen_bulk.py
index 73572d4e8..54a9cfd61 100644
--- a/tests/data/test_gen_bulk.py
+++ b/tests/data/test_gen_bulk.py
@@ -12,6 +12,8 @@ def setUp(self):
self.alloy=[]
with open (param_file, 'r') as fp :
jdata = json.load (fp)
+ if "init_fp_style" not in jdata:
+ jdata["init_fp_style"] = "VASP"
out_dir = out_dir_name(jdata)
self.out_dir= out_dir
jdata['out_dir'] = out_dir
@@ -52,3 +54,7 @@ def test(self):
for scale in scales:
perts=glob.glob(os.path.join(scale,"[0-9]*"))
self.assertEqual(len(perts),self.pert_numb+1)
+
+
+if __name__ == '__main__':
+ unittest.main()
\ No newline at end of file
diff --git a/tests/data/test_gen_bulk_abacus.py b/tests/data/test_gen_bulk_abacus.py
new file mode 100644
index 000000000..4ac7ef39f
--- /dev/null
+++ b/tests/data/test_gen_bulk_abacus.py
@@ -0,0 +1,55 @@
+import os,sys,json,glob,shutil
+import unittest
+
+sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
+__package__ = 'data'
+from .context import setUpModule
+from .context_bulk import *
+
+class TestGenBulkABACUS(unittest.TestCase):
+ def setUp(self):
+ self.alloy=[]
+ with open (abacus_param_file, 'r') as fp :
+ jdata = json.load (fp)
+ out_dir = out_dir_name(jdata)
+ self.out_dir= out_dir
+ jdata['out_dir'] = out_dir
+ self.elements=jdata["elements"]
+ self.scale_numb=len(jdata["scale"])
+ self.pert_numb=jdata["pert_numb"]
+ self.root_dir= out_dir
+ create_path(out_dir)
+ stru_data = make_unit_cell_ABACUS(jdata)
+ supercell_stru = make_super_cell_ABACUS(jdata, stru_data)
+ place_element_ABACUS(jdata, supercell_stru)
+ make_abacus_relax(jdata, {"fp_resources":{}})
+ make_scale_ABACUS(jdata)
+ pert_scaled(jdata)
+
+ def tearDown(self):
+ shutil.rmtree(self.root_dir)
+
+ def test(self):
+ path=self.out_dir+"/00.place_ele"
+ #struct0=Structure.from_file(os.path.join(path,"STRU"))
+ alloys=glob.glob(os.path.join(path,"sys-*"))
+ stru0 = get_abacus_STRU(os.path.join(alloys[0], "STRU"))
+ self.assertEqual(len(alloys),stru0['coords'].shape[0]-1)
+ for ii in alloys:
+ elem_numb=[int(i) for i in ii.split('/')[-1].split('-')[1:]]
+ struct=get_abacus_STRU(os.path.join(ii,"STRU"))
+ self.assertEqual(struct["atom_names"],self.elements)
+ self.assertEqual(struct["atom_numbs"], elem_numb)
+ path=self.out_dir+"/01.scale_pert"
+ alloys=glob.glob(os.path.join(path,"sys-*"))
+ self.assertEqual(len(alloys), stru0['coords'].shape[0]-1)
+ for ii in alloys:
+ scales=glob.glob(os.path.join(ii,"scale-*"))
+ self.assertEqual(len(scales),self.scale_numb)
+ for scale in scales:
+ perts=glob.glob(os.path.join(scale,"[0-9]*"))
+ self.assertEqual(len(perts),self.pert_numb+1)
+
+
+if __name__ == '__main__':
+ unittest.main()
\ No newline at end of file
diff --git a/tests/generator/out_data_post_fp_cp2k/02.fp/task.000.000000/output b/tests/generator/out_data_post_fp_cp2k/02.fp/task.000.000000/output
index 03543b509..9a5bdd19e 100644
--- a/tests/generator/out_data_post_fp_cp2k/02.fp/task.000.000000/output
+++ b/tests/generator/out_data_post_fp_cp2k/02.fp/task.000.000000/output
@@ -877,7 +877,7 @@
Total energy: -31.04389446913810
- *** WARNING in qs_scf.F:542 :: SCF run NOT converged ***
+ *** SCF run converged in 29 steps ***
!-----------------------------------------------------------------------------!
diff --git a/tests/generator/out_data_post_fp_cp2k/orig/box.raw b/tests/generator/out_data_post_fp_cp2k/orig/box.raw
index 7de7fc209..ba9babfb2 100644
--- a/tests/generator/out_data_post_fp_cp2k/orig/box.raw
+++ b/tests/generator/out_data_post_fp_cp2k/orig/box.raw
@@ -1 +1 @@
-1.080400000000000027e+01 0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 1.049799999999999933e+01 0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 1.095599999999999952e+01
+1.080399990081787109e+01 0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 1.049800014495849609e+01 0.000000000000000000e+00 0.000000000000000000e+00 0.000000000000000000e+00 1.095600032806396484e+01
diff --git a/tests/generator/out_data_post_fp_cp2k/orig/coord.raw b/tests/generator/out_data_post_fp_cp2k/orig/coord.raw
index f95b14882..fbad9852a 100644
--- a/tests/generator/out_data_post_fp_cp2k/orig/coord.raw
+++ b/tests/generator/out_data_post_fp_cp2k/orig/coord.raw
@@ -1 +1 @@
-1.027355000000000018e+00 1.706661999999999901e+00 1.602476000000000012e+00 3.963681999999999928e+00 3.976694999999999869e+00 3.215037000000000145e+00 4.365914000000000073e+00 5.882829000000000086e+00 5.464286000000000421e+00 1.528405999999999931e+00 2.262055000000000149e+00 3.791755000000000209e+00 6.766289000000000442e+00 7.323279000000000316e+00 7.395023000000000124e+00 8.059174999999999756e+00 9.176418999999999215e+00 5.758306000000000147e+00
+1.027354955673217773e+00 1.706662058830261230e+00 1.602476000785827637e+00 3.963681936264038086e+00 3.976695060729980469e+00 3.215037107467651367e+00 4.365913867950439453e+00 5.882829189300537109e+00 5.464285850524902344e+00 1.528406023979187012e+00 2.262054920196533203e+00 3.791754961013793945e+00 6.766289234161376953e+00 7.323278903961181641e+00 7.395022869110107422e+00 8.059174537658691406e+00 9.176419258117675781e+00 5.758306026458740234e+00
diff --git a/tests/generator/out_data_post_fp_cp2k/orig/energy.raw b/tests/generator/out_data_post_fp_cp2k/orig/energy.raw
index 48fcacaef..16e1e92a4 100644
--- a/tests/generator/out_data_post_fp_cp2k/orig/energy.raw
+++ b/tests/generator/out_data_post_fp_cp2k/orig/energy.raw
@@ -1 +1 @@
--8.447581865210245269e+02
+-8.447582397460937500e+02
diff --git a/tests/generator/out_data_post_fp_cp2k/orig/force.raw b/tests/generator/out_data_post_fp_cp2k/orig/force.raw
index 6fa5a5550..eb099f7db 100644
--- a/tests/generator/out_data_post_fp_cp2k/orig/force.raw
+++ b/tests/generator/out_data_post_fp_cp2k/orig/force.raw
@@ -1 +1 @@
-6.917655894184945309e-01 7.553510274301609151e-01 2.274964525840567742e+00 -3.209682908751355646e-01 2.775192185863639693e-01 9.094058723076186013e-01 -6.332575659257858036e-02 -6.449617417274867703e-01 -8.145295946268114040e-01 -1.756150875299649639e-01 -3.121818029385921012e-01 -2.260577661002467487e+00 1.112470571386751095e+00 1.688658903147764123e+00 -1.721519658405964881e+00 -1.208800036573186576e+00 -1.778025306758221902e+00 1.601097413955125504e+00
+6.917656660079956055e-01 7.553510665893554688e-01 2.274964809417724609e+00 -3.209683299064636230e-01 2.775192558765411377e-01 9.094060063362121582e-01 -6.332576274871826172e-02 -6.449618339538574219e-01 -8.145296573638916016e-01 -1.756150871515274048e-01 -3.121818304061889648e-01 -2.260577917098999023e+00 1.112470626831054688e+00 1.688659071922302246e+00 -1.721519827842712402e+00 -1.208800196647644043e+00 -1.778025507926940918e+00 1.601097583770751953e+00
diff --git a/tests/generator/out_data_post_fp_cp2k/orig/type_map.raw b/tests/generator/out_data_post_fp_cp2k/orig/type_map.raw
index dc4df7f2f..101da0cbf 100644
--- a/tests/generator/out_data_post_fp_cp2k/orig/type_map.raw
+++ b/tests/generator/out_data_post_fp_cp2k/orig/type_map.raw
@@ -1 +1,3 @@
-C H N
+C
+H
+N
diff --git a/tests/generator/out_data_post_fp_gaussian/orig/energy.raw b/tests/generator/out_data_post_fp_gaussian/orig/energy.raw
index fd4a649a7..a0dea2026 100644
--- a/tests/generator/out_data_post_fp_gaussian/orig/energy.raw
+++ b/tests/generator/out_data_post_fp_gaussian/orig/energy.raw
@@ -1 +1 @@
--1102.7145808882785
+-1102.7145898692427
diff --git a/tests/generator/out_data_post_fp_gaussian/orig/nopbc b/tests/generator/out_data_post_fp_gaussian/orig/nopbc
new file mode 100644
index 000000000..e69de29bb
diff --git a/tests/generator/param-methane-abacus.json b/tests/generator/param-methane-abacus.json
index 2fca7d924..ab8c4d34e 100644
--- a/tests/generator/param-methane-abacus.json
+++ b/tests/generator/param-methane-abacus.json
@@ -131,17 +131,29 @@
"fp_task_max": 30,
"fp_task_min": 8,
"fp_pp_path": ".",
- "fp_pp_files": [ "H_HSCV_PBE-1.0.UPF","C_HSCV_PBE-1.0.UPF"],
+ "fp_pp_files": [ "./H_HSCV_PBE-1.0.UPF","./C_HSCV_PBE-1.0.UPF"],
"user_fp_params":{
+ "lattice_constant":1,
"ntype": 2,
"ecutwfc": 80,
- "mixing_type": "pulay",
+ "dr2": 1e-7,
+ "niter": 50,
+ "basis_type": "pw",
+ "gamma_only": true,
+ "dft_functional": "pbe",
+ "mixing_type": "pulay",
"mixing_beta": 0.4,
"symmetry": 1,
"nbands": 5,
"nspin": 1,
"ks_solver": "cg",
"smearing": "fixed",
- "sigma": 0.001
+ "sigma": 0.001,
+ "force":1,
+ "stress":1,
+ "out_descriptor":0,
+ "lmax_descriptor":0,
+ "deepks_scf":0,
+ "model_file":"model.ptg"
}
}
diff --git a/tests/generator/test_make_fp.py b/tests/generator/test_make_fp.py
index 914c9b149..1687b695d 100644
--- a/tests/generator/test_make_fp.py
+++ b/tests/generator/test_make_fp.py
@@ -150,19 +150,28 @@
IN.PSP3 = N.SG15.PBE.UPF\n";
abacus_input_ref = "INPUT_PARAMETERS\n\
+calculation scf\n\
ntype 2\n\
-pseudo_dir ./\n\
ecutwfc 80.000000\n\
+dr2 1.000000e-07\n\
+niter 50\n\
+basis_type pw\n\
+dft_functional pbe\n\
+gamma_only 1\n\
mixing_type pulay\n\
mixing_beta 0.400000\n\
symmetry 1\n\
-nbands 5.000000\n\
+nbands 5\n\
nspin 1\n\
ks_solver cg\n\
smearing fixed\n\
sigma 0.001000\n\
force 1\n\
-stress 1\n"
+stress 1\n\
+out_descriptor 0\n\
+lmax_descriptor 0\n\
+deepks_scf 0\n\
+model_file model.ptg\n"
abacus_kpt_ref = "K_POINTS\n\
0\n\
diff --git a/tests/generator/test_post_fp.py b/tests/generator/test_post_fp.py
index 8c14889f6..f0028db92 100644
--- a/tests/generator/test_post_fp.py
+++ b/tests/generator/test_post_fp.py
@@ -7,7 +7,7 @@
__package__ = 'generator'
from .context import post_fp
from .context import post_fp_pwscf
-from .context import post_fp_abacus_pw_scf
+from .context import post_fp_abacus_scf
from .context import post_fp_siesta
from .context import post_fp_vasp
from .context import post_fp_gaussian