Skip to content

expecting triqs_cthyb::many_body_op_t in C++, but got 'triqs.operators.operators.Operator' in Python.  #101

@haoweixu

Description

@haoweixu

Hi, I was trying to use DCore with TRIQS/cthyb impurity solver. I have DCore version=3.0.0, TRIQS=3.0, TRIQS/DFTTools=3.0, and TRIQS/cthyb=3.0.

I used a pretty simple test input, which is as follows

[model]
seedname = bethe
lattice = bethe
norb = 1
nelec = 1.0
t = 1.0
kanamori = [(4.0, 0.0, 0.0)]
nk = 100

[system]
beta = 40.0

[impurity_solver]
name = TRIQS/cthyb
#name = null
#n_warmup_cycles{int} = 10000
n_cycles{int} = 3000
length_cycle{int} = 50

[control]
max_step = 1

However, we I run DCore, I always have the error message
"expecting triqs_cthyb::many_body_op_t in C++, but got 'triqs.operators.operators.Operator' in Python."
And the full error output is

Unexpected error:
---- There is 1 error in Python -> C++ transcription for the class triqs_cthyb::solve_parameters_t

1 The parameter h_int does not have the right type : expecting triqs_cthyb::many_body_op_t in C++, but got 'triqs.operators.operators.Operator' in Python.
Unexpected error:
---- There is 1 error in Python -> C++ transcription for the class triqs_cthyb::solve_parameters_t

1 The parameter h_int does not have the right type : expecting triqs_cthyb::many_body_op_t in C++, but got 'triqs.operators.operators.Operator' in Python.
Starting run with 2 MPI rank(s) at : 2021-10-05 10:30:54.347398
Traceback (most recent call last):
File "/home/haoweixu/.conda/envs/dcore/lib/python3.6/site-packages/dcore/impurity_solvers/triqs_cthyb_impl.py", line 100, in
main(args.input_file, args.output_file)
File "/home/haoweixu/.conda/envs/dcore/lib/python3.6/site-packages/dcore/impurity_solvers/triqs_cthyb_impl.py", line 74, in main
S.solve(h_int=h_int, **params)
File "/home/haoweixu/.conda/envs/dcore/lib/python3.6/site-packages/triqs_cthyb/solver.py", line 140, in solve
solve_status = SolverCore.solve(self, **params_kw)
TypeError:
---- There is 1 error in Python -> C++ transcription for the class triqs_cthyb::solve_parameters_t

1 The parameter h_int does not have the right type : expecting triqs_cthyb::many_body_op_t in C++, but got 'triqs.operators.operators.Operator' in Python.
Traceback (most recent call last):
File "/home/haoweixu/.conda/envs/dcore/lib/python3.6/site-packages/dcore/impurity_solvers/triqs_cthyb_impl.py", line 100, in
main(args.input_file, args.output_file)
File "/home/haoweixu/.conda/envs/dcore/lib/python3.6/site-packages/dcore/impurity_solvers/triqs_cthyb_impl.py", line 74, in main
S.solve(h_int=h_int, **params)
File "/home/haoweixu/.conda/envs/dcore/lib/python3.6/site-packages/triqs_cthyb/solver.py", line 140, in solve
solve_status = SolverCore.solve(self, **params_kw)
TypeError:
---- There is 1 error in Python -> C++ transcription for the class triqs_cthyb::solve_parameters_t

1 The parameter h_int does not have the right type : expecting triqs_cthyb::many_body_op_t in C++, but got 'triqs.operators.operators.Operator' in Python.

Looks like there are some incompabilities between TRIQS/cthyb and DCore. Could you please help solve this issue? Thank you very much!

Best wishes

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions