Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - fangyongxinxi

Pages: 1 ... 3 4 [5] 6 7 ... 10
61
Your script file is wrong, because you have mentioned that TiNi is a bcc structure and you define a simple cubic lattice for it. You should modify the lattice vectors for TiNi as the following format:
v1 = a * (-1/2, 1/2, 1/2),
v2= a * ( 1/2, -1/2, 1/2),
v3 = a * (1/2,  1/2, -1/2).

If you persist the use a simple cubic lattice for TiNi,  more atoms rather than 2 atoms in the unit cell should be given.

Thanks for your reply, but I can not agree with you.

Though I build a simple cubic unit-cell, I put the 2 atoms in the right position.
( the same thing , I can build a simple cubic, and put 4 atoms in right position, and get FCC structure)
the model, I think, is no problem, the question is it OK to use ATK to optmize the TiNi structure ?

Looking forward to your reply.
Thanks again.

62
Hello,
I want to get the lattcie parameters of the B2 phase of TiNi alloys (BCC structure, with Ti(0, 0, 0), Ni(0.5,0.5,0.5)), other peoples' works show that the lattice constant is 3.009-3.012 Angstrom,
( Ref: 1. http://www.nature.com/nmat/journal/v2/n5/pdf/nmat884.pdf   2. http://prb.aps.org/pdf/PRB/v79/i2/e020202 )
I redo the structure relax by VASP, almost get the same lattice constant.

My problem is: when I relax the structure with ATK with different input parameters (such as SZP, DZP, spin-polarized), get the lattice constant is:2.59-2.64 Angstrom. It seems the error is big.

Could you help me about this question? Thanks.



my input file for atk is :

# -------------------------------------------------------------
# Bulk configuration
# -------------------------------------------------------------

# Set up lattice
vector_a = [3.009, 0.0, 0.0]*Angstrom
vector_b = [0.0, 3.009, 0.0]*Angstrom
vector_c = [0.0, 0.0, 3.009]*Angstrom
lattice = UnitCell(vector_a, vector_b, vector_c)

# Define elements
elements = [Titanium, Nickel]

# Define coordinates
fractional_coordinates = [[ 0,  0,  0 ],
                          [ 0.5,  0.5,  0.5 ]]

# Set up configuration
bulk_configuration = BulkConfiguration(
    bravais_lattice=lattice,
    elements=elements,
    fractional_coordinates=fractional_coordinates
    )

# -------------------------------------------------------------
# Calculator
# -------------------------------------------------------------
#----------------------------------------
# Basis Set
#----------------------------------------
basis_set = [
    GGABasis.Titanium_SingleZetaPolarized,
    GGABasis.Nickel_SingleZetaPolarized,
    ]

#----------------------------------------
# Exchange-Correlation
#----------------------------------------
exchange_correlation = SGGA.BLYP

numerical_accuracy_parameters = NumericalAccuracyParameters(
    k_point_sampling=(10, 10, 12),
    )

calculator = LCAOCalculator(
    basis_set=basis_set,
    exchange_correlation=exchange_correlation,
    numerical_accuracy_parameters=numerical_accuracy_parameters,
    )

bulk_configuration.setCalculator(calculator)
nlprint(bulk_configuration)
bulk_configuration.update()
nlsave('tini_unit_opt.nc', bulk_configuration)

bulk_configuration = OptimizeGeometry(
        bulk_configuration,
        max_forces=0.02*eV/Ang,
        max_stress=0.02*eV/Ang**3,
        max_steps=200,
        max_step_length=0.5*Ang,
        trajectory_filename=None,
        optimizer_method=QuasiNewton(),
        )
nlsave('tini_unit_opt.nc', bulk_configuration)
nlprint(bulk_configuration)

63
Hello,
I have one question about how to use "analysis from file".
For example, a have input.py file, after optimization, there are two BulkConfigurations in the result.nc file (stru_1 is the unrelax structure, stru_2 is the relaxed structure.)
now I want to re-optimize the structure with a more accurate standard (for example, change the Max force to 0.01 eV/atom ) , and want to restore the old result ( I am confused about this part , I don't know where I should put the "Analysis from File" )

In the "script generator", there are:
1. Bulk
2. New calculator
3. Analysis from File
4. OptimizeGeometry

1, I want to know the squence of the four things, is 1-2-3-4, or 1-3-2-4, or 3-2-4, or 3-4 ?
2, In the "Analysis from file", I should restore the stru_1, or stru_2 ?

Thanks~








64
Thanks for your answer, it helps me.

65
Hello,

I run a script with a for-loop to test the mesh-cut-off with ATK12.8.r1. I can not find the right number, I wonder why. Is somthing wrong with my script , or my system ?

Thanks~

the input sript is below, and the total energy are:
cut-off  Etotal
30  -4647.2374
50  -4646.413
70 -4646.147
90 -4646.059
110 -4645.999
150 -4645.953
170 -4645.942
190 -4645.932
210 -4645.926
240 -4645.920
260 -4645.915
280 -4645.912

# input script
vector_a = [3.94206054094, -1.97163500648e-13, -1.97712127445e-14]*Angstrom
vector_b = [-1.97163500648e-13, 3.94206054094, -2.86317462121e-14]*Angstrom
vector_c = [-7.13930706432e-14, -1.0304864771e-13, 14.0108929811]*Angstrom
lattice = UnitCell(vector_a, vector_b, vector_c)

elements = [Potassium, Potassium, Iron, Iron, Iron, Iron, Selenium, Selenium,
            Selenium, Selenium]

fractional_coordinates = [[  2.80143445e-14,   4.92916417e-14,  -8.54315314e-07],
                          [  5.00000000e-01,   5.00000000e-01,   5.00000506e-01],
                          [  9.48261082e-14,   5.00000000e-01,   2.50011259e-01],
                          [  5.00000000e-01,   2.12883543e-13,   2.50011259e-01],
                          [  1.70509499e-13,   5.00000000e-01,   7.49988543e-01],
                          [  5.00000000e-01,   2.05720897e-13,   7.49988543e-01],
                          [  2.22933031e-14,   3.41568038e-14,   3.69467062e-01],
                          [  5.00000000e-01,   5.00000000e-01,   8.69445676e-01],
                          [  5.26577799e-14,   1.87595793e-14,   6.30534560e-01],
                          [  5.00000000e-01,   5.00000000e-01,   1.30552332e-01]]


bulk_configuration = BulkConfiguration(
    bravais_lattice=lattice,
    elements=elements,
    fractional_coordinates=fractional_coordinates
    )
basis_set = [
    GGABasis.Potassium_SingleZetaPolarized,
    GGABasis.Iron_SingleZetaPolarized,
    GGABasis.Selenium_SingleZetaPolarized,
    ]
exchange_correlation = SGGA.PBE

# for loop for mcut
for mcut in (30,50,70,90,110,150,170,190,210,240,260,280):
    numerical_accuracy_parameters = NumericalAccuracyParameters(
        grid_mesh_cutoff=mcut*Hartree,
        k_point_sampling=(12, 12, 4),
        )

    calculator = LCAOCalculator(
        basis_set=basis_set,
        exchange_correlation=exchange_correlation,
        numerical_accuracy_parameters=numerical_accuracy_parameters,
        )

    bulk_configuration.setCalculator(calculator)
    bulk_configuration.update()
    nlsave('testpara.nc', bulk_configuration)

    # -------------------------------------------------------------
    # Total energy
    id = str(mcut)
    total_energy = TotalEnergy(bulk_configuration)
    nlsave('testpara.nc', total_energy,id)

66
Hello,

I hope to make a movie from the traj file.
Wthe software help, we can see the movement of atoms easily in any direction. My method of making a movie is: drop the configuration( from the traj file ) to the "viewer",  export the picture one by one. Then put these pictures together by another softwares, get a movie.
the bad thing of this method is : it's not convanient to trun around (or we say, move observing direction) .

so, my question is, is there any easy way to get a movie? for example, directly from the traj file.

Thanks~

67
General Questions and Answers / Re: The mesh-cutoff set in ATK-SE
« on: December 14, 2012, 06:38 »
Thanks for your answer.

68
Thanks for your reply.

69
kk=nlread(filename='test.nc',object_id='222')[0]

my id full name is '222',

If the above line is: kk=nlread(filename='test.nc',object_id='222')
it's bad, this line shoud add "0"
I wonder why it should follow "0",    because the id is unique.

70
General Questions and Answers / The mesh-cutoff set in ATK-SE
« on: December 13, 2012, 15:17 »
Hello,

I use atk(2012.08.r1)-slater-koster method to do a calculation. When I test the mesh cut-off, got strange result: the system has the same Energy for all the mesh cut-off number. Is that right ?

Thanks.


the input file:

# -------------------------------------------------------------
# Bulk configuration
# -------------------------------------------------------------

# Set up lattice
vector_a = [4.9649236399, 2.22044604925e-16, 0.0]*Angstrom
vector_b = [-1.65497454663, 4.68097489846, 2.17714856586e-15]*Angstrom
vector_c = [-1.65497454663, -2.34048744923, 4.05384317654]*Angstrom
lattice = UnitCell(vector_a, vector_b, vector_c)

# Define elements
elements = [Iron, Iron, Iron, Iron, Iron, Iron, Iron, Iron]

# Define coordinates
fractional_coordinates = [[  0.00000000e+00,   0.00000000e+00,   0.00000000e+00],
                          [ -2.77555756e-17,   0.00000000e+00,   5.00000000e-01],
                          [  5.09977520e-17,   5.00000000e-01,  -4.93038066e-32],
                          [ -5.55111512e-17,   5.00000000e-01,   5.00000000e-01],
                          [  5.00000000e-01,   3.08148791e-33,   2.73691106e-48],
                          [  5.00000000e-01,  -2.77555756e-17,   5.00000000e-01],
                          [  5.00000000e-01,   5.00000000e-01,  -4.93038066e-32],
                          [  5.00000000e-01,   5.00000000e-01,   5.00000000e-01]]

# Set up configuration
bulk_configuration = BulkConfiguration(
    bravais_lattice=lattice,
    elements=elements,
    fractional_coordinates=fractional_coordinates
    )

# -------------------------------------------------------------
# Calculator
# -------------------------------------------------------------
#----------------------------------------
# Basis Set
#----------------------------------------
basis_set = DFTBDirectory("dftb/mio/")

#----------------------------------------
# Pair Potentials
#----------------------------------------
pair_potentials = DFTBDirectory("dftb/mio/")

for mcut in (2,4,6,8,10,20,40,50):

    numerical_accuracy_parameters = NumericalAccuracyParameters(
        grid_mesh_cutoff=mcut*Hartree,
        k_point_sampling=(10, 10, 10),
        )

    iteration_control_parameters = IterationControlParameters()

    calculator = SlaterKosterCalculator(
        basis_set=basis_set,
        pair_potentials=pair_potentials,
        numerical_accuracy_parameters=numerical_accuracy_parameters,
        iteration_control_parameters=iteration_control_parameters,
        )

    bulk_configuration.setCalculator(calculator)
    nlprint(bulk_configuration)
    bulk_configuration.update()
    nlsave('mesh_test.nc', bulk_configuration)

# -------------------------------------------------------------
# Total energy
# -------------------------------------------------------------
    total_energy = TotalEnergy(bulk_configuration)
    nlsave('mesh_test.nc', total_energy)
    nlprint(total_energy)

71
Hello,

In the ATK-2008.10 version manual, there are some examples to show the test of input parameters, and get simple and beautful log files, such as below(page 100 in the manual):

   Energy eigenvalues for water (in eV)
-----------------------------------------
  LDA             GGA             diff
-----------------------------------------
-24.243         -24.376           0.133
-12.470         -12.442          -0.028
 -8.187          -8.129          -0.058
 -6.140          -5.988          -0.152

so my question is: is there any method to control the log output? Manytimes we just need simple log files, not all the details.

for example, I run a *.py and get  a nc file, five configurations and five Total Energies in this nc file. I just want to see the five energies in my output log file, not a very long log file. Any way can do this ?


Thanks

72
one nc file test.nc
two configurations in it, id, '111' and '222'
I wonder how to use nlread with object_id
I use
nlread('test.nc',BulkConfiguration,'222'),  failed
nlread(filename='test.nc',object_id='222')  failed

I know how to use nlread with list

but how to use nlread with object_id ?

Thank you~

73
Dear Sir,
I hope to optmize one configuration(200 atoms) by ATK12.8. When doing script generator, I choose the 'calculator' with SE(extended-huckel), the "optmizegeometry" can not be choose. So, my question is : the SE(extended-huckel) method is not be able to do the optmize work?
If I want to optmize this configuration, what I should do ?

Thanks.

75
Dear Sir,
I try to use Extended Huckel method to calculate the energy of a system with ATK11.8.2. This calculation could be finished by ATK-DFT, but fail wihen I use ATK-Extended Huckel. The scripts are the "se_input.py" and "dft_input.py", all calculation parameters are set as default values.
when running the "se_input.py", the software shows :

####
** Back Engine Exception 541 : Diagonalization error, overlap matrix not positive definite. This may be caused by atoms that are too close to each other or situated in equivalent positions, or (in the Extended Huckel model) a too low value of interaction_max_range
** Location : mathutils.cpp:1068

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
####

So, my problem is:
1. why this system could be finished by DFT, but not for SE? should I change some parameters in the SE calculation, such as basis set or something else? Is there some rules to choose the parameters in SE method ?


Thanks.

Pages: 1 ... 3 4 [5] 6 7 ... 10