CASMcode icon indicating copy to clipboard operation
CASMcode copied to clipboard

magnetic cluster expansion

Open wshao1995 opened this issue 1 year ago • 4 comments

Recently, I saw a literature about the chemical and magnetic degrees of freedom of (Mn,Fe)Ru2Sn system. DOI: 10.1103/PhysRevMaterials.3.104411. However, I have some doubts need to be solved: (1)When we study magnetic system, it contains two variables: site chemistry xi and site moment mi. For my Al-Co system, I wrote a prim.json file as follow, and I am not sure it is right or not. prim.json: { "basis" : [ { "coordinate" : [ 0.333333343, 0.666666687, 0.250000000 ], "dofs" : { "Cunitmagspin" : { "axis_names" : [ "m" ], "basis" : [ [ 1.000000000000 ] ] } }, "occupants" : [ "Al", "Co" ] }, { "coordinate" : [ 0.666666627, 0.333333313, 0.750000000 ], "dofs" : { "Cunitmagspin" : { "axis_names" : [ "m" ], "basis" : [ [ 1.000000000000 ] ] } }, "occupants" : [ "Al", "Co" ] } ], "coordinate_mode" : "Fractional", "description" : "equilibrium pure Co", "lattice_vectors" : [ [2.5007836819, 0.0000000000, 0.0000000000], [-1.2503918409, 2.1657421979, 0.0000000000], [0.0000000000, 0.0000000000, 4.0333309174] ], "title" : "hcp" }

(2) If my prim.json is right, it should generate a large number of symmetrically distinct chemical and magnetic orderings. However, these configurations are only related with occupation from my results. Do I need to set magnetic moment (Co1, Co2) in SPECIES to achieve it?

(3) Can i use quantum espresso to perform the first principles calculation of magnetic configurations? If it works, how should i write the SPECIES file? I think the 'magmom' parameter in SPECIES file only works for VASP.

wshao1995 avatar May 05 '23 14:05 wshao1995

  • The prim that you have should be able to enumerate distinct chemical and magnetic orderings.
  • To enumerate distinct magnetic orderings you will use ConfigEnumSiteDoFs. See ccasm enum --desc ConfigEnumSiteDoFs for more information.
  • To enumerate distinct chemical orderings you will use ConfigEnumAllOccupations. See ccasm enum --desc ConfigEnumAllOccupations for more information.

seshasaibehara avatar May 17 '23 16:05 seshasaibehara

Thanks for your answer. I generated a set of magnetic configurations for pure fcc-Co. Then, I will start to perform DFT calculation for each configuration.

Firstly, I want to use the casm-calc --setup to get the INCAR, but i don't how to set the MAGMOM parameter in the SPECIES file because they have different values for these configurations.

In addition, My purpose is to fit the magnetic cluster expansion, I think the Cmagspin value should not be changed during the DFT calculation. Should I fix magnetic moment for each ion and run self-consistently calculation for these magnetic configurations? I don't know my understanding is right or not.

The configurational information are as follows: { "config_id":{ "SCEL1_1_1_1_0_0_0":61 }, "supercells":{ "SCEL1_1_1_1_0_0_0":{ "0":{ "cache":{

        },
        "dof":{
           "local_dofs":{
              "Cmagspin":{
                 "values":[
                    [
                       0.000000000000
                    ]
                 ]
              }
           },
           "occ":[
              0
           ]
        },
        "source":[
           {
              "enumerated_by":"ConfigEnumAllOccupations",
              "step":0
           }
        ]
     },
     "1":{
        "cache":{
           
        },
        "dof":{
           "local_dofs":{
              "Cmagspin":{
                 "values":[
                    [
                       3.000000000000
                    ]
                 ]
              }
           },
           "occ":[
              0
           ]
        },
        "source":null
     },
     "10":{
        "cache":{
           
        },
        "dof":{
           "local_dofs":{
              "Cmagspin":{
                 "values":[
                    [
                       2.550000000000
                    ]
                 ]
              }
           },
           "occ":[
              0
           ]
        },
        "source":null
     },
     "11":{
        "cache":{
           
        },
        "dof":{
           "local_dofs":{
              "Cmagspin":{
                 "values":[
                    [
                       2.500000000000
                    ]
                 ]
              }
           },
           "occ":[
              0
           ]
        },
        "source":null
     },
     "12":{
        "cache":{
           
        },
        "dof":{
           "local_dofs":{
              "Cmagspin":{
                 "values":[
                    [
                       2.450000000000
                    ]
                 ]
              }
           },
           "occ":[
              0
           ]
        },
        "source":null
     }

wshao1995 avatar May 18 '23 15:05 wshao1995

Dear developers,

We are now working on the magnetic cluster expansion by using CASM. As the prim.json file shows, we set different initial spins for Co. Then different magnetic configurations were enumerated and DFT calculations were performed. We then use the resulted values to fit CE, however, when we update the results, it shows the following error, and this case happens for each configuration:

Updating data records for SCEL1_1_1_1_0_0_0/1 ERROR: Attempting to initialize ConfigDoF from SimpleStructure. Species 'Co1' is not allowed on sublattice 0

So please could you tell us what wrong with that? We need your help so waiting for your reply.

prim.json: { "basis" : [ { "coordinate" : [ 0.000000000000, 0.000000000000, 0.000000000000 ], "dofs": { "Cmagspin": {} }, "occupant_dof" : [ "Al","Co1", "Co2", "Co3"] } ], "species":{ "Al":{ "properties":{ "Cmagspin":{ "value":[0] } } }, "Co1":{ "properties":{ "Cmagspin":{ "value":[1.76] } } }, "Co2":{ "properties":{ "Cmagspin":{ "value":[-1.76] } } }, "Co3":{ "properties":{ "Cmagspin":{ "value":[0] } } } }, "coordinate_mode" : "Fractional", "description" : "equilibrium pure Co", "lattice_vectors" : [ [ 0.000000000000, 1.760525941850, 1.760525941850 ], [ 1.760525941850, 0.000000000000, 1.760525941850 ], [ 1.760525941850, 1.760525941850, 0.000000000000 ] ], "title" : "fm" }

properties.calc.json:

{ "atom_coords" : [ [ 0.000000000000, 0.000000000000, 0.000000000000 ] ], "atom_type" : [ "Co1" ], "coordinate_mode" : "Direct", "atom_properties" : { "Cmagspin" : { "value" : [ [ 1.6913] ] } }, "lattice_vectors" : [ [-0.000000000, 1.732972244, 1.732972244], [ 1.732972244, -0.000000000, 1.732972244], [ 1.732972244, 1.732972244, -0.000000000] ], "global_properties": { "energy": { "value": -4058.2295904474 }, "Cmagspin" : { "value" : [ [ 1.63] ] }
} }

structure.json: { "atom_coords" : [ [ 0.000000000000, 0.000000000000, 0.000000000000 ] ], "atom_properties" : { "Cmagspin" : { "value" : [ [ 1.760000000000 ] ] } }, "atom_type" : [ "Co1" ], "coordinate_mode" : "Cartesian", "lattice_vectors" : [ [ 0.000000000000, 1.760525941850, 1.760525941850 ], [ 1.760525941850, 0.000000000000, 1.760525941850 ], [ 1.760525941850, 1.760525941850, 0.000000000000 ] ], "mol_coords" : [ [ 0.000000000000, 0.000000000000, 0.000000000000 ] ], "mol_properties" : { "Cmagspin" : { "value" : [ [ 0.000000000000 ] ] } }, "mol_type" : [ "Co1" ] }

wshao1995 avatar May 30 '23 05:05 wshao1995

Hi @wshao1995 , did you figured out your problem with the atomic species alias:

ERROR: Attempting to initialize ConfigDoF from SimpleStructure. Species 'Co1' is not allowed on sublattice 0

sjtuzhanglei avatar Nov 10 '23 22:11 sjtuzhanglei