Recent Posts

Pages: 1 ... 8 9 [10]
91
Any suggestion?thank you!
92
Dear Anders,

                   I am having the follwing error while writting the data file,
"File "/util/opt/atk/2022.12/bin/../atkpython/bin/atkpython", line 8, in <module>
    sys.exit(__run_atkpython())
  File "zipdir/ATKExecutables/atkwrappers/__init__.py", line 876, in __run_atkpython
  File "transmission_hexplot-kartik-modified.py", line 105
        for j in range(len(kvalues)):
SyntaxError: invalid character in identifier"

Could you please look into and send me a modified script?

With best,
Kartik
93
The variables of relevance for this are kx, ky and zi. You can just loop over them and print to a text file in desired format, although I would argue that any analysis or plotting you want to do might be better done in Python...

Code: python
kvalues = ky[0]
for i in range(len(kvalues)):
    for j in range(len(kvalues)):
        print(kvalues[i], kvalues[j], zi[i,j])
94
Dear Anders,

                       Could you please let me know how to extract and write the data points for the kpoint (kx,ky) resolve transmission plot (kx,ky vs T at Fermi energy)  using  your  script transmision_hexaplot.py in a separate file ? If you could modify the script it would be very helpful.
Thanks!

With best,
Kartik
95
General Questions and Answers / Re: M3GNet energies
« Last post by Anders Blom on March 19, 2024, 20:51 »
You are not telling it to print anything...
Add nlprint(total_energy) and you will see the energy printed
96
Hello,

I am trying to run AKMC with cluster but it seems that I can't assign more than 6 cores. When using low calculation parameter with lcao 1 node 7 cores, qatk_quantum licensed number of users already reached appears.. When using forcefield to run AKMC 1 node 7 cores, qatk_forcefield licensed number of users already reached appears too. 

Considering that AKMC is quite heavy calculation, I don't understand why the licenses stated above can only allow one core per license. It seems that I have 5 qatk_quantum and qatk_forcefield license each.

Is there a way around this?

Thank you
97
Hi,
I calculated the graphene phonon dispersion spectrum using the following script:
Code
# -------------------------------------------------------------
# Bulk Configuration
# -------------------------------------------------------------

# Set up lattice
lattice = Hexagonal(2.4612*Angstrom, 30.0*Angstrom)

# Define elements
elements = [Carbon, Carbon]

# Define coordinates
fractional_coordinates = [[ 0.333333333333,  0.6666666666     ,  0.5           ],
                          [ 0.666666666666,  0.3333333333  ,  0.5           ]]

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


# -------------------------------------------------------------
# Calculator
# -------------------------------------------------------------
#----------------------------------------
# Basis Set
#----------------------------------------
basis_set = [
    GGABasis.Carbon_DoubleZetaPolarized,
    ]
#----------------------------------------
# Exchange-Correlation
#----------------------------------------
exchange_correlation = SGGA.PBE

k_point_sampling = MonkhorstPackGrid(
    na=51,
    nb=51,
    )
numerical_accuracy_parameters = NumericalAccuracyParameters(
    density_mesh_cutoff=110.0*Hartree,
    k_point_sampling=k_point_sampling,
    occupation_method=FermiDirac(0.05*eV),

    )
poisson_solver = FastFourier2DSolver(
    boundary_conditions=[[PeriodicBoundaryCondition(),PeriodicBoundaryCondition()],
                         [PeriodicBoundaryCondition(),PeriodicBoundaryCondition()],
                         [DirichletBoundaryCondition(),DirichletBoundaryCondition()]]
    )
iteration_control_parameters = IterationControlParameters(
 tolerance=1e-08,
 max_steps=10000,
 )
 

calculator = LCAOCalculator(
    exchange_correlation=exchange_correlation,
    numerical_accuracy_parameters=numerical_accuracy_parameters,
    poisson_solver=poisson_solver,
    iteration_control_parameters=iteration_control_parameters,
    )

bulk_configuration.setCalculator(calculator)
nlprint(bulk_configuration)
bulk_configuration.update()
nlsave('gr_mp_fhi_dzp.hdf5', bulk_configuration)


## -------------------------------------------------------------
## Optimize Geometry
## ------------------------------------------------------------- 
 
   
bulk_configuration = OptimizeGeometry(
bulk_configuration,
max_forces=0.0001*eV/Ang,
max_stress=1.0e-04*eV/Angstrom**3,
max_steps=20000,
max_step_length=0.4*Ang,
optimize_cell=True,
trajectory_filename=None,
optimizer_method=LBFGS(),
enable_optimization_stop_file=False,
)
bulk_configuration.update()
nlsave('gr_mp_fhi_dzp.hdf5', bulk_configuration)
nlprint(bulk_configuration)



bulk_configuration = nlread('gr_mp_fhi_dzp.hdf5', BulkConfiguration)[1]
# -------------------------------------------------------------
# Dynamical Matrix
# -------------------------------------------------------------
dynamical_matrix = DynamicalMatrix(
    bulk_configuration,
    filename= 'gr_mp_fhi.hdf5',
    object_id='dynamical_matrix',
    repetitions=(11, 11, 1),
    atomic_displacement=0.01*Angstrom,
    acoustic_sum_rule=True,
    finite_difference_method=Central,
    #max_interaction_range=3.5*Angstrom,
    force_tolerance=1e-08*Hartree/Bohr**2,
    processes_per_displacement=28,
    log_filename_prefix='forces_fhi_mp_',
    use_wigner_seitz_scheme=True,
    )
dynamical_matrix.update()
 
# -------------------------------------------------------------
# Phonon Bandstructure
# -------------------------------------------------------------
phonon_bandstructure = PhononBandstructure(
    configuration=bulk_configuration,
    dynamical_matrix=dynamical_matrix,
    route=['G', 'K', 'M', 'G'],
    points_per_segment=100,
    number_of_bands=All
    )

nlsave('gr_mp_fhi_dzp.hdf5', phonon_bandstructure)

filename = 'gr_mp_fhi_ph_band.dat'#.format(band_index)
with open(filename, 'w') as f:
    phonon_bandstructure.nlprint(f)

In  processes_per_displacement, the parameter of the dynamical matrix is set to just '4' using a single node, and then the results obtained match the literature.
But when I use larger supercell repetitions=(11, 11, 1), I need to set  processes_per_displacement for more processes, so I set it to '28'. Then, the phonon energies are ~ 12000 meV (with negative energies, too), quite off from the simple graphene phonon dispersion. This processes_per_displacement  is a sensitive parameter.
Why is it so? What am I missing here?
98
I am following the tutorial for quantum transport on Quantum ATK (https://docs.quantumatk.com/tutorials/atk_transport_calculations/atk_transport_calculations.html), however I do not see any eigenvalue section within the Transmission analyzer block to visualize the eigenstates. In the tutorial, it is shown on the bottom left, but is not there now from what I can see. I am curious if an update since the tutorial, moved this section or removed it. Thank you.
99
Thank you so much for your reply.
In your suggested elastic scattering mean free path tutorial, in the "T and mfp.py" file for calculating mfp I need to give doping density as input. Can you suggest what value should I choose for this case? ( as I am not adding any external dopant, just using thermal vibration induced randomness)
100
General Questions and Answers / Dipole calculation
« Last post by Akash Ramasamy on March 16, 2024, 08:19 »
I am trying to calculate the dipole as per the tutorial code for the silicene nanoribbon system. But I am getting some error. I herewith attached the py file and the error message.

Thanks in advance
error message
Mi = sum([ i*abs(grid_data[i,:,:]).sum() for i in range(ni)])/density_abs_sum
TypeError: 'PhysicalQuantity' object is not callable
application called MPI_Abort(MPI_COMM_WORLD, 1) - process 1
Pages: 1 ... 8 9 [10]