sim = ConstrainedMendelianSimulation(template, replications=args.replications) elif args.method.lower() == 'genedrop': sim = NaiveGeneDroppingSimulation(template, replications=args.replications) # Read effects file if args.effectfile: trait = Architecture.from_file(args.effectsfile) trait.name = 'affected' else: trait = Architecture('affected','dichotomous') # More effects. Specified effects override file effects. if args.effects: for effect in args.effects: chr, pos, a, k = effect locus = int(chr), int(pos) a, k = int(a), int(k) trait.add_effect(locus, a, k) if args.lthresh: trait.set_liability_threshold(args.lthresh) if args.effects or args.effectfile: sim.set_trait(trait) if args.constraintfile: sim.read_constraints(args.constraintfile) sim.prefix = args.prefix sim.run(verbose=args.verbosity, output_predicate=args.predicate, compression=args.compress, writeibd=args.ibd)