@staticmethod
def _gen_bash_command(bashscript_fname: str, uge_log_fname: str, queue_name:
    str, gpu_node: bool=False, sync_mode: bool=False) ->str:
    """
        Creates a UGE command to submit the job to the cluster for processing
        :param bashscript_fname: the bash script to run by the cluster
        :param uge_log_fname: a filename of any log messages captured by the UGE
        :param queue_name: the queue to submit the job to
        :param gpu_node: (bool) indicates whether the queue the job is being submitted to has GPU nodes
        :param sync_mode: if True, then the shell will be captured by this process.  Currently unsupported!
        :return: (str) bash command
        """
    cmd_list = list()
    cmd_list.append('qsub -q')
    cmd_list.append(queue_name)
    if gpu_node:
        cmd_list.append('-l gpu=1')
    cmd_list.append('-V -v PATH -cwd -S /bin/bash -j y')
    if sync_mode:
        cmd_list.append('-sync y')
    cmd_list.append('-o %s' % (uge_log_fname,))
    cmd_list.append(bashscript_fname)
    cmd = ' '.join(cmd_list)
    return cmd
