def remotedata(self): """Create an remote data""" from aiida.orm import RemoteData rmd = RemoteData() rmd.computer = self.localhost rmd.set_remote_path(str(self._workdir)) return rmd
def _generate_remote_data(computer, remote_path, entry_point_name=None): """Generate a RemoteData node, loctated at remote_path""" from aiida.common.links import LinkType from aiida.orm import CalcJobNode, RemoteData from aiida.plugins.entry_point import format_entry_point_string entry_point = format_entry_point_string('aiida.calculations', entry_point_name) remote = RemoteData(remote_path=remote_path) remote.computer = computer if entry_point_name is not None: creator = CalcJobNode(computer=computer, process_type=entry_point) creator.set_option('resources', { 'num_machines': 1, 'num_mpiprocs_per_machine': 1 }) #creator.set_attribute('prefix', 'aiida') remote.add_incoming(creator, link_type=LinkType.CREATE, link_label='remote_folder') creator.store() return remote
def _generate_remote_data(computer, remote_path, entry_point_name=None, extras_root=[]): """Return a `KpointsData` with a mesh of npoints in each direction.""" from aiida.common.links import LinkType from aiida.orm import CalcJobNode, RemoteData, Dict from aiida.plugins.entry_point import format_entry_point_string entry_point = format_entry_point_string('aiida.calculations', entry_point_name) remote = RemoteData(remote_path=remote_path) remote.computer = computer if entry_point_name is not None: creator = CalcJobNode(computer=computer, process_type=entry_point) creator.set_option('resources', { 'num_machines': 1, 'num_mpiprocs_per_machine': 1 }) remote.add_incoming(creator, link_type=LinkType.CREATE, link_label='remote_folder') for extra in extras_root: to_link = extra[0] if isinstance(to_link, dict): to_link = Dict(dict=to_link) to_link.store() creator.add_incoming(to_link, link_type=LinkType.INPUT_CALC, link_label=extra[1]) creator.store() return remote