// ta_Dump File v3.0 -- code v7.0.0.0 rev7374 LeabraProject .projects["BG_PS_inhib_e7"] { Doc_Group @.docs = [1] { taDoc @["ProjectDocs"] { }; }; Wizard_Group @.wizards = [1] { LeabraWizard @["LeabraWizard_2"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NO_CLIP"] { }; }; }; }; ControlPanel_Group @.ctrl_panels = [3] { ControlPanel @["MasterControl"] { EditMbrItem_Group @.mbrs = [7] { EditMbrItem @[0] { }; EditMbrItem @[1] { }; EditMbrItem @[2] { }; EditMbrItem @[3] { }; EditMbrItem @[4] { }; EditMbrItem @[5] { }; EditMbrItem @[6] { }; }; EditMthItem_Group @.mths = [4] { EditMthItem @[0] { }; EditMthItem @[1] { }; EditMthItem @[2] { }; EditMthItem @[3] { }; }; }; ControlPanel @["UnitInhib"] { EditMbrItem_Group @.mbrs = [9] { EditMbrItem @[0] { }; EditMbrItem @[1] { }; EditMbrItem @[2] { }; EditMbrItem @[3] { }; EditMbrItem @[4] { }; EditMbrItem @[5] { }; EditMbrItem @[6] { }; EditMbrItem @[7] { }; EditMbrItem @[8] { }; }; EditMthItem_Group @.mths = [0] { }; }; ClusterRun @["ClusterRun"] { EditMbrItem_Group @.mbrs = [0] { }; EditMthItem_Group @.mths = [0] { }; DataTableCols @.jobs_running.data = [26] { String_Data @["tag"] { }; String_Data @["notes"] { }; String_Data @["params"] { }; String_Data @["status"] { }; String_Data @["status_info"] { }; String_Data @["submit_time"] { }; String_Data @["start_time"] { }; String_Data @["end_time"] { }; String_Data @["job_no"] { }; String_Data @["job_out"] { }; String_Data @["job_out_file"] { }; String_Data @["dat_files"] { }; String_Data @["other_files"] { }; int_Data @["command_id"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; String_Data @["command"] { }; String_Data @["repo_url"] { }; String_Data @["cluster"] { }; String_Data @["queue"] { }; String_Data @["run_time"] { }; int_Data @["ram_gb"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["n_threads"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["mpi_nodes"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["pb_batches"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["pb_nodes"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; String_Data @["submit_svn"] { }; String_Data @["submit_job"] { }; }; DataTableCols @.jobs_done.data = [26] { String_Data @["tag"] { }; String_Data @["notes"] { }; String_Data @["params"] { }; String_Data @["status"] { }; String_Data @["status_info"] { }; String_Data @["submit_time"] { }; String_Data @["start_time"] { }; String_Data @["end_time"] { }; String_Data @["job_no"] { }; String_Data @["job_out"] { }; String_Data @["job_out_file"] { }; String_Data @["dat_files"] { }; String_Data @["other_files"] { }; int_Data @["command_id"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; String_Data @["command"] { }; String_Data @["repo_url"] { }; String_Data @["cluster"] { }; String_Data @["queue"] { }; String_Data @["run_time"] { }; int_Data @["ram_gb"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["n_threads"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["mpi_nodes"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["pb_batches"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["pb_nodes"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; String_Data @["submit_svn"] { }; String_Data @["submit_job"] { }; }; DataTableCols @.jobs_archive.data = [26] { String_Data @["tag"] { }; String_Data @["notes"] { }; String_Data @["params"] { }; String_Data @["status"] { }; String_Data @["status_info"] { }; String_Data @["submit_time"] { }; String_Data @["start_time"] { }; String_Data @["end_time"] { }; String_Data @["job_no"] { }; String_Data @["job_out"] { }; String_Data @["job_out_file"] { }; String_Data @["dat_files"] { }; String_Data @["other_files"] { }; int_Data @["command_id"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; String_Data @["command"] { }; String_Data @["repo_url"] { }; String_Data @["cluster"] { }; String_Data @["queue"] { }; String_Data @["run_time"] { }; int_Data @["ram_gb"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["n_threads"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["mpi_nodes"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["pb_batches"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["pb_nodes"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; String_Data @["submit_svn"] { }; String_Data @["submit_job"] { }; }; DataTableCols @.file_list.data = [9] { String_Data @["file_name"] { }; String_Data @["tag"] { }; String_Data @["size"] { }; String_Data @["kind"] { }; String_Data @["date_modified"] { }; String_Data @["date_created"] { }; String_Data @["svn_file_path"] { }; String_Data @["proj_file_path"] { }; String_Data @["file_path"] { }; }; DataTableCols @.cluster_info.data = [6] { String_Data @["queue"] { }; String_Data @["job_no"] { }; String_Data @["user"] { }; String_Data @["state"] { }; String_Data @["procs"] { }; String_Data @["start_time"] { }; }; ParamSearchAlgo_List @.search_algos = [0] { }; }; }; DataTable_Group @.data = [0] { DataTable_Group @.gp["InputData"] = [5] { DataTable @["RF_Env"] { DataTableCols @.data = [2] { String_Data @["Name"] { }; float_Data @["Input"] { }; }; }; DataTable @["TrnTestFreq"] { DataTableCols @.data = [5] { String_Data @["Name"] { }; float_Data @["Input"] { }; float_Data @["Output"] { }; float_Data @["SNc"] { }; float_Data @["Motor_Cortex"] { }; }; }; DataTable @["TestFreq"] { DataTableCols @.data = [4] { String_Data @["Name"] { }; float_Data @["Input"] { }; float_Data @["Output"] { }; float_Data @["SNc"] { }; }; }; DataTable @["TestFreq_Hard"] { DataTableCols @.data = [4] { String_Data @["Name"] { }; float_Data @["Input"] { }; float_Data @["Output"] { }; float_Data @["SNc"] { }; }; }; DataTable @["Train_Freq"] { DataTableCols @.data = [5] { String_Data @["Name"] { }; float_Data @["Input"] { }; float_Data @["Output"] { }; float_Data @["SNc"] { }; float_Data @["Motor_Cortex"] { }; }; }; }; DataTable_Group @.gp["OutputData"] = [5] { DataTable @["TrialOutputData"] { DataTableCols @.data = [10] { int_Data @["batch"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; UserDataItem @["view_panel_wd"] { }; }; }; int_Data @["epoch"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; UserDataItem @["view_panel_wd"] { }; }; }; int_Data @["trial"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; UserDataItem @["view_panel_wd"] { }; }; }; String_Data @["trial_name"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; String_Data @["group_name"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; int_Data @["phase_no"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["minus_cycles"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["sse"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["ext_rew"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["Output_sse"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; }; }; DataTable @["TrnTestTrialOutputData"] { DataTableCols @.data = [10] { int_Data @["batch"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["epoch"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["trial"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; String_Data @["trial_name"] { }; String_Data @["group_name"] { }; int_Data @["phase_no"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["minus_cycles"] { }; float_Data @["sse"] { }; float_Data @["ext_rew"] { }; float_Data @["Output_sse"] { }; }; }; DataTable @["EpochOutputData"] { DataTableCols @.data = [6] { int_Data @["batch"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["epoch"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["avg_sse"] { }; float_Data @["cnt_err"] { }; float_Data @["avg_ext_rew"] { }; float_Data @["avg_cycles"] { }; }; }; DataTable @["TrnTestEpochOutputData"] { DataTableCols @.data = [6] { int_Data @["batch"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; int_Data @["epoch"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["avg_sse"] { }; float_Data @["cnt_err"] { }; float_Data @["avg_ext_rew"] { }; float_Data @["avg_cycles"] { }; }; }; DataTable @["CycleOutputData"] { DataTableCols @.data = [16] { int_Data @["batch"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; UserDataItem @["view_panel_wd"] { }; }; }; int_Data @["epoch"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; UserDataItem @["view_panel_wd"] { }; }; }; int_Data @["trial"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; UserDataItem @["view_panel_wd"] { }; }; }; String_Data @["trial_name"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; String_Data @["group_name"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; int_Data @["phase_no"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; UserDataItem @["view_panel_wd"] { }; }; }; int_Data @["cycle"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["sse"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["ext_rew"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["STN_acts_avg"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["Motor__acts_avg"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["Thalam_acts_avg"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["GP_Int_acts_avg"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["GP_Ext_acts_avg"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["Output_act"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["Output_units_0_act"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; }; }; }; DataTable_Group @.gp["AnalysisData"] = [4] { DataTable @["Go_NoGo"] { DataTableCols @.data = [4] { float_Data @["gn_pos"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["gn_neg"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["nogo_pos"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["nogo_neg"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; }; }; DataTable @["Go_NoGo_Group"] { DataTableCols @.data = [4] { float_Data @["gn_pos_mean"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["gn_pos_sem"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["gn_neg_mean"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; float_Data @["gn_neg_sem"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_wd"] { }; }; }; }; }; DataTable @["TrnTestTrialOutputData_Group"] { DataTableCols @.data = [17] { String_Data @["trial_name_group"] { }; float_Data @["batch_mean"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["batch_sem"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["epoch_mean"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["epoch_sem"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["trial_mean"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["trial_sem"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["phase_no_mean"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["phase_no_sem"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["minus_cycles_mean"] { }; float_Data @["minus_cycles_sem"] { }; float_Data @["sse_mean"] { }; float_Data @["sse_sem"] { }; float_Data @["ext_rew_mean"] { }; float_Data @["ext_rew_sem"] { }; float_Data @["Output_sse_mean"] { }; float_Data @["Output_sse_sem"] { }; }; }; DataTable @["TrnTestEpochOutputData_Group"] { DataTableCols @.data = [5] { int_Data @["epoch_group"] { UserDataItem_List @*(.user_data_) { UserDataItem @["NARROW"] { }; }; }; float_Data @["cnt_err_mean"] { }; float_Data @["cnt_err_sem"] { }; float_Data @["avg_sse_mean"] { }; float_Data @["avg_sse_sem"] { }; }; }; }; }; Program_TopGroup @.programs = [3] { Program @["ActBasedRField_Go"] { ProgObjList @.objs = [2] { ActBasedRF @["ActBasedRF_0"] { }; DataTable @["ActRFDataGo"] { DataTableCols @.data = [11] { float_Data @["Input"] { }; float_Data @["SNc"] { }; float_Data @["GP_Int"] { }; float_Data @["GP_Ext"] { }; float_Data @["Thalamus"] { }; float_Data @["Motor_Cortex"] { }; float_Data @["Output"] { }; float_Data @["STN"] { }; float_Data @["Go"] { }; float_Data @["NoGo"] { }; float_Data @["Striatum_Inhib"] { }; }; }; }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [3] { ProgVar @["network"] { }; ProgVar @["final_rf"] { }; ProgVar @["init_rf"] { }; }; ProgVar_List @.vars = [4] { ProgVar @["ActBasedRF_0"] { }; ProgVar @["ActRFDataGo"] { }; ProgVar @["trg_layer0_name"] { }; ProgVar @["trg_layer0"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [3] { MethodCall @[0] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[1] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[2] { ProgArg_List @.meth_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; }; ProgEl_List @.prog_code = [2] { If @[0] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; }; }; Else @[1] { ProgEl_List @.else_code = [2] { If @[0] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; Else @[1] { ProgEl_List @.else_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; }; }; }; }; Program @["ActBasedRField_NoGo"] { ProgObjList @.objs = [2] { ActBasedRF @["ActBasedRF_1"] { }; DataTable @["ActRFDataNoGo"] { DataTableCols @.data = [11] { float_Data @["Input"] { }; float_Data @["SNc"] { }; float_Data @["GP_Int"] { }; float_Data @["GP_Ext"] { }; float_Data @["Thalamus"] { }; float_Data @["Motor_Cortex"] { }; float_Data @["Output"] { }; float_Data @["STN"] { }; float_Data @["Go"] { }; float_Data @["NoGo"] { }; float_Data @["Striatum_Inhib"] { }; }; }; }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [3] { ProgVar @["network"] { }; ProgVar @["final_rf"] { }; ProgVar @["init_rf"] { }; }; ProgVar_List @.vars = [4] { ProgVar @["ActBasedRF_1"] { }; ProgVar @["ActRFDataNoGo"] { }; ProgVar @["trg_layer1_name"] { }; ProgVar @["trg_layer1"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [3] { MethodCall @[0] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[1] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[2] { ProgArg_List @.meth_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; }; ProgEl_List @.prog_code = [2] { If @[0] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; }; }; Else @[1] { ProgEl_List @.else_code = [2] { If @[0] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; Else @[1] { ProgEl_List @.else_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; }; }; }; }; Program @["LeabraStartup"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [12] { ProgVar @["network"] { }; ProgVar @["pause"] { }; ProgVar @["num_intact_snc_units"] { }; ProgVar @["DA_burst_val"] { }; ProgVar @["D2rel"] { }; ProgVar @["meds"] { }; ProgVar @["learning"] { }; ProgVar @["exoression"] { }; ProgVar @["input_data"] { }; ProgVar @["TrainFreq"] { }; ProgVar @["TestFreq"] { }; ProgVar @["TrnTestFreq"] { }; }; ProgVar_List @.vars = [10] { ProgVar @["batch"] { }; ProgVar @["tag"] { }; ProgVar @["log_dir"] { }; ProgVar @["log_file_nm"] { }; ProgVar @["EpochOutputData"] { }; ProgVar @["TrialOutputData"] { }; ProgVar @["Go_NoGo"] { }; ProgVar @["Go_NoGo_Group"] { }; ProgVar @["TrnTestEpochOutputData"] { }; ProgVar @["TrnTestEpochOutputData_Group"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [1] { IfReturn @[0] { }; }; ProgEl_List @.prog_code = [37] { IfReturn @[0] { }; Comment @[1] { }; MiscCall @[2] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MiscCall @[3] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MiscCall @[4] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MiscCall @[5] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MiscCall @[6] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MiscCall @[7] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MiscCall @[8] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MiscCall @[9] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MiscCall @[10] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MiscCall @[11] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MiscCall @[12] { ProgArg_List @.meth_args = [0] { }; }; RegisterArgs @[13] { }; Comment @[14] { }; PrintExpr @[15] { }; MiscCall @[16] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MiscCall @[17] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; ProgVarFmArg @[18] { }; ProgVarFmArg @[19] { }; ProgVarFmArg @[20] { }; ProgVarFmArg @[21] { }; ProgVarFmArg @[22] { }; ProgVarFmArg @[23] { }; ProgVarFmArg @[24] { }; ProgVarFmArg @[25] { }; ProgVarFmArg @[26] { }; Comment @[27] { }; MethodCall @[28] { ProgArg_List @.meth_args = [4] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; ProgArg @[3] { }; }; }; MethodCall @[29] { ProgArg_List @.meth_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; MethodCall @[30] { ProgArg_List @.meth_args = [4] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; ProgArg @[3] { }; }; }; MethodCall @[31] { ProgArg_List @.meth_args = [4] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; ProgArg @[3] { }; }; }; MethodCall @[32] { ProgArg_List @.meth_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; PrintExpr @[33] { }; MethodCall @[34] { ProgArg_List @.meth_args = [0] { }; }; ProgramCall @[35] { ProgArg_List @.prog_args = [5] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; ProgArg @[3] { }; ProgArg @[4] { }; }; }; MethodCall @[36] { ProgArg_List @.meth_args = [4] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; ProgArg @[3] { }; }; }; }; }; Program_Group @.gp["LeabraAll_Std"] = [24] { Program @["LeabraBatch"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [5] { ProgVar @["network"] { }; ProgVar @["input_data"] { }; ProgVar @["TrainFreq"] { }; ProgVar @["TestFreq"] { }; ProgVar @["TrnTestFreq"] { }; }; ProgVar_List @.vars = [12] { ProgVar @["batch"] { }; ProgVar @["tstcycle"] { }; ProgVar @["meds"] { }; ProgVar @["DA_dip_val"] { }; ProgVar @["tonic_DA"] { }; ProgVar @["Go_NoGo"] { }; ProgVar @["Go_NoGo_Group"] { }; ProgVar @["TrnTestEpochOutputData"] { }; ProgVar @["out"] { }; ProgVar @["max_batch"] { }; ProgVar @["train_mode"] { }; ProgVar @["test_mode"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [4] { NetCounterInit @[0] { }; PrintExpr @[1] { }; If @[2] { ProgEl_List @.true_code = [4] { AssignExpr @[0] { }; AssignExpr @[1] { }; OtherProgramVar @[2] { }; OtherProgramVar @[3] { }; }; }; Else @[3] { ProgEl_List @.else_code = [4] { AssignExpr @[0] { }; AssignExpr @[1] { }; OtherProgramVar @[2] { }; OtherProgramVar @[3] { }; }; }; }; ProgEl_List @.prog_code = [5] { NetCounterInit @[0] { }; WhileLoop @[1] { ProgEl_List @.loop_code = [9] { AssignExpr @[0] { }; ProgramCall @[1] { ProgArg_List @.prog_args = [4] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; ProgArg @[3] { }; }; }; AssignExpr @[2] { }; ProgramCall @[3] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; ProgramCall @[4] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; AssignExpr @[5] { }; ProgramCall @[6] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; ProgramCall @[7] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; NetCounterIncr @[8] { }; }; }; DataGroupProg @[2] { DataOpList @.group_spec.ops = [5] { DataGroupEl @["epoch_GROUP_0"] { }; DataGroupEl @["cnt_err_MEAN_1"] { }; DataGroupEl @["cnt_err_SEM_2"] { }; DataGroupEl @["avg_sse_MEAN_3"] { }; DataGroupEl @["avg_sse_SEM_4"] { }; }; }; DataGroupProg @[3] { DataOpList @.group_spec.ops = [4] { DataGroupEl @["gn_pos_MEAN_0"] { }; DataGroupEl @["gn_pos_SEM_1"] { }; DataGroupEl @["gn_neg_MEAN_2"] { }; DataGroupEl @["gn_neg_SEM_3"] { }; }; }; PrintExpr @[4] { }; }; }; Program @["LeabraTrain"] { ProgObjList @.objs = [1] { RndSeed @["rnd_seed"] { }; }; ProgType_List @.types = [1] { DynEnumType @["RndInitType"] { DynEnumItem_List @.enums = [2] { DynEnumItem @["OLD_SEED"] { }; DynEnumItem @["NEW_SEED"] { }; }; }; }; ProgVar_List @.args = [4] { ProgVar @["network"] { }; ProgVar @["input_data"] { }; ProgVar @["TrnTestFreq"] { }; ProgVar @["no_prompts"] { }; }; ProgVar_List @.vars = [27] { ProgVar @["max_epoch"] { }; ProgVar @["train_mode"] { }; ProgVar @["test_mode"] { }; ProgVar @["rnd_init"] { }; ProgVar @["epoch"] { }; ProgVar @["err_stopcrit"] { }; ProgVar @["rnd_seed"] { }; ProgVar @["TestFreq"] { }; ProgVar @["train_timer"] { }; ProgVar @["TrnTestFreq"] { }; ProgVar @["j"] { }; ProgVar @["i"] { }; ProgVar @["num_intact_snc_units"] { }; ProgVar @["active_da_units"] { }; ProgVar @["D2abs"] { }; ProgVar @["snc_size"] { }; ProgVar @["med_expression"] { }; ProgVar @["PD_expression"] { }; ProgVar @["learning"] { }; ProgVar @["SNc"] { }; ProgVar @["D2"] { }; ProgVar @["Striatum"] { }; ProgVar @["Go"] { }; ProgVar @["Train_Freq"] { }; ProgVar @["str_unit"] { }; ProgVar @["DA_dip_val"] { }; ProgVar @["tonic_DA"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [7] { AssignExpr @[0] { }; MethodCall @[1] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; AssignExpr @[2] { }; NetCounterInit @[3] { }; If @[4] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; Else @[5] { ProgEl_List @.else_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; IfGuiPrompt @[6] { ProgEl_List @.yes_code = [2] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; PrintExpr @[1] { }; }; }; }; ProgEl_List @.prog_code = [24] { AssignExpr @[0] { }; MethodCall @[1] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; NetCounterInit @[2] { }; MemberAssign @[3] { }; MemberAssign @[4] { }; If @[5] { ProgEl_List @.true_code = [2] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; PrintExpr @[1] { }; }; }; AssignExpr @[6] { }; PrintExpr @[7] { }; If @[8] { ProgEl_List @.true_code = [2] { AssignExpr @[0] { }; OtherProgramVar @[1] { }; }; }; If @[9] { ProgEl_List @.true_code = [1] { AssignExpr @[0] { }; }; }; Else @[10] { ProgEl_List @.else_code = [1] { AssignExpr @[0] { }; }; }; UserScript @[11] { }; OtherProgramVar @[12] { }; OtherProgramVar @[13] { }; MemberAssign @[14] { }; ProgramCall @[15] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; WhileLoop @[16] { ProgEl_List @.loop_code = [8] { MemberAssign @[0] { }; ProgramCall @[1] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; NetCounterIncr @[2] { }; MemberAssign @[3] { }; ProgramCall @[4] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MemberAssign @[5] { }; IfBreak @[6] { }; MemberAssign @[7] { }; }; }; PrintExpr @[17] { }; If @[18] { ProgEl_List @.true_code = [1] { AssignExpr @[0] { }; }; }; Else @[19] { ProgEl_List @.else_code = [1] { AssignExpr @[0] { }; }; }; OtherProgramVar @[20] { }; UserScript @[21] { }; If @[22] { ProgEl_List @.true_code = [3] { AssignExpr @[0] { }; OtherProgramVar @[1] { }; UserScript @[2] { }; }; }; MethodCall @[23] { ProgArg_List @.meth_args = [0] { }; }; }; }; Program @["LeabraEpoch"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["input_data"] { }; }; ProgVar_List @.vars = [5] { ProgVar @["data_loop_order"] { }; ProgVar @["trial"] { }; ProgVar @["trial_mon_data"] { }; ProgVar @["epoch_timer"] { }; ProgVar @["data_loop_index"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [2] { NetCounterInit @[0] { }; AssignExpr @[1] { }; }; ProgEl_List @.prog_code = [9] { NetCounterInit @[0] { }; AssignExpr @[1] { }; MethodCall @[2] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[3] { ProgArg_List @.meth_args = [0] { }; }; NetDataLoop @[4] { ProgEl_List @.loop_code = [2] { ProgramCall @[0] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; If @[1] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; }; }; If @[5] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; MethodCall @[6] { ProgArg_List @.meth_args = [0] { }; }; ProgramCall @[7] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[8] { ProgArg_List @.meth_args = [0] { }; }; }; }; Program @["LeabraTrnTestEpoch"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["input_data"] { }; }; ProgVar_List @.vars = [5] { ProgVar @["data_loop_order"] { }; ProgVar @["trial"] { }; ProgVar @["trial_mon_data"] { }; ProgVar @["epoch_timer"] { }; ProgVar @["data_loop_index"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [2] { NetCounterInit @[0] { }; AssignExpr @[1] { }; }; ProgEl_List @.prog_code = [9] { NetCounterInit @[0] { }; AssignExpr @[1] { }; MethodCall @[2] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[3] { ProgArg_List @.meth_args = [0] { }; }; NetDataLoop @[4] { ProgEl_List @.loop_code = [2] { ProgramCall @[0] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; If @[1] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; }; }; If @[5] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; MethodCall @[6] { ProgArg_List @.meth_args = [0] { }; }; ProgramCall @[7] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[8] { ProgArg_List @.meth_args = [0] { }; }; }; }; Program @["LeabraTestEpoch"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["TestEnv"] { }; }; ProgVar_List @.vars = [16] { ProgVar @["data_loop_order"] { }; ProgVar @["trial"] { }; ProgVar @["trial_mon_data"] { }; ProgVar @["epoch_timer"] { }; ProgVar @["data_loop_index"] { }; ProgVar @["epoch"] { }; ProgVar @["max_epoch"] { }; ProgVar @["final_rf"] { }; ProgVar @["acc_rf"] { }; ProgVar @["init_rf"] { }; ProgVar @["str_unit"] { }; ProgVar @["num_intact_snc_units"] { }; ProgVar @["active_da_units"] { }; ProgVar @["snc_size"] { }; ProgVar @["k"] { }; ProgVar @["SNc"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [6] { NetCounterInit @[0] { }; AssignExpr @[1] { }; AssignExpr @[2] { }; AssignExpr @[3] { }; AssignExpr @[4] { }; OtherProgramVar @[5] { }; }; ProgEl_List @.prog_code = [19] { NetCounterInit @[0] { }; AssignExpr @[1] { }; AssignExpr @[2] { }; MemberAssign @[3] { }; AssignExpr @[4] { }; MethodCall @[5] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[6] { ProgArg_List @.meth_args = [0] { }; }; AssignExpr @[7] { }; ProgramCall @[8] { ProgArg_List @.prog_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; ProgramCall @[9] { ProgArg_List @.prog_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; AssignExpr @[10] { }; NetDataLoop @[11] { ProgEl_List @.loop_code = [2] { ProgramCall @[0] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; If @[1] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; }; }; If @[12] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; MethodCall @[13] { ProgArg_List @.meth_args = [0] { }; }; ProgramCall @[14] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; ProgramCall @[15] { ProgArg_List @.prog_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; ProgramCall @[16] { ProgArg_List @.prog_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; ProgramCall @[17] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[18] { ProgArg_List @.meth_args = [0] { }; }; }; }; Program @["LeabraTrial"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["input_data"] { }; }; ProgVar_List @.vars = [2] { ProgVar @["phase_no"] { }; ProgVar @["update_net_view"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [1] { NetCounterInit @[0] { }; }; ProgEl_List @.prog_code = [6] { NetCounterInit @[0] { }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; WhileLoop @[2] { ProgEl_List @.loop_code = [4] { UserScript @[0] { }; ProgramCall @[1] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; NetCounterIncr @[2] { }; MethodCall @[3] { ProgArg_List @.meth_args = [0] { }; }; }; }; MethodCall @[3] { ProgArg_List @.meth_args = [0] { }; }; ProgramCall @[4] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; NetUpdateView @[5] { }; }; }; Program @["LeabraTrnTestTrial"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["input_data"] { }; }; ProgVar_List @.vars = [2] { ProgVar @["phase_no"] { }; ProgVar @["update_net_view"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [1] { NetCounterInit @[0] { }; }; ProgEl_List @.prog_code = [6] { NetCounterInit @[0] { }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; WhileLoop @[2] { ProgEl_List @.loop_code = [4] { UserScript @[0] { }; ProgramCall @[1] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; NetCounterIncr @[2] { }; MethodCall @[3] { ProgArg_List @.meth_args = [0] { }; }; }; }; MethodCall @[3] { ProgArg_List @.meth_args = [0] { }; }; ProgramCall @[4] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; NetUpdateView @[5] { }; }; }; Program @["LeabraTestTrial"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["TestWP"] { }; }; ProgVar_List @.vars = [4] { ProgVar @["phase_no"] { }; ProgVar @["update_net_view"] { }; ProgVar @["acc_rf"] { }; ProgVar @["init_rf"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [1] { NetCounterInit @[0] { }; }; ProgEl_List @.prog_code = [8] { NetCounterInit @[0] { }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; WhileLoop @[2] { ProgEl_List @.loop_code = [4] { UserScript @[0] { }; ProgramCall @[1] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; NetCounterIncr @[2] { }; MethodCall @[3] { ProgArg_List @.meth_args = [0] { }; }; }; }; MethodCall @[3] { ProgArg_List @.meth_args = [0] { }; }; ProgramCall @[4] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; ProgramCall @[5] { ProgArg_List @.prog_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; ProgramCall @[6] { ProgArg_List @.prog_args = [3] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; }; }; NetUpdateView @[7] { }; }; }; Program @["LeabraSettle"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["input_data"] { }; }; ProgVar_List @.vars = [5] { ProgVar @["cycle"] { }; ProgVar @["min_cycles"] { }; ProgVar @["update_net_view"] { }; ProgVar @["LayerWriter_0"] { }; ProgVar @["Mypause"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [1] { NetCounterInit @[0] { }; }; ProgEl_List @.prog_code = [15] { NetCounterInit @[0] { }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; ProgramCall @[2] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; ProgramCall @[3] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; If @[4] { ProgEl_List @.true_code = [1] { MemberAssign @[0] { }; }; }; Else @[5] { ProgEl_List @.else_code = [1] { MemberAssign @[0] { }; }; }; MethodCall @[6] { ProgArg_List @.meth_args = [0] { }; }; If @[7] { ProgEl_List @.true_code = [1] { AssignExpr @[0] { }; }; }; Else @[8] { ProgEl_List @.else_code = [1] { AssignExpr @[0] { }; }; }; WhileLoop @[9] { ProgEl_List @.loop_code = [4] { ProgramCall @[0] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; NetCounterIncr @[1] { }; IfContinue @[2] { }; IfBreak @[3] { }; }; }; MethodCall @[10] { ProgArg_List @.meth_args = [0] { }; }; If @[11] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; If @[12] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; NetUpdateView @[13] { }; PrintExpr @[14] { }; }; }; Program @["LeabraTrnTestSettle"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["input_data"] { }; }; ProgVar_List @.vars = [3] { ProgVar @["cycle"] { }; ProgVar @["min_cycles"] { }; ProgVar @["update_net_view"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [1] { NetCounterInit @[0] { }; }; ProgEl_List @.prog_code = [14] { NetCounterInit @[0] { }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; ProgramCall @[2] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; ProgramCall @[3] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; If @[4] { ProgEl_List @.true_code = [1] { MemberAssign @[0] { }; }; }; Else @[5] { ProgEl_List @.else_code = [1] { MemberAssign @[0] { }; }; }; MethodCall @[6] { ProgArg_List @.meth_args = [0] { }; }; If @[7] { ProgEl_List @.true_code = [1] { AssignExpr @[0] { }; }; }; Else @[8] { ProgEl_List @.else_code = [1] { AssignExpr @[0] { }; }; }; WhileLoop @[9] { ProgEl_List @.loop_code = [4] { ProgramCall @[0] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; NetCounterIncr @[1] { }; IfContinue @[2] { }; IfBreak @[3] { }; }; }; MethodCall @[10] { ProgArg_List @.meth_args = [0] { }; }; If @[11] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; If @[12] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; NetUpdateView @[13] { }; }; }; Program @["LeabraTestSettle"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["TestWP"] { }; }; ProgVar_List @.vars = [4] { ProgVar @["cycle"] { }; ProgVar @["tstcycle"] { }; ProgVar @["min_cycles"] { }; ProgVar @["update_net_view"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [1] { NetCounterInit @[0] { }; }; ProgEl_List @.prog_code = [14] { NetCounterInit @[0] { }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; ProgramCall @[2] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; ProgramCall @[3] { ProgArg_List @.prog_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; If @[4] { ProgEl_List @.true_code = [1] { MemberAssign @[0] { }; }; }; Else @[5] { ProgEl_List @.else_code = [1] { MemberAssign @[0] { }; }; }; MethodCall @[6] { ProgArg_List @.meth_args = [0] { }; }; If @[7] { ProgEl_List @.true_code = [1] { AssignExpr @[0] { }; }; }; Else @[8] { ProgEl_List @.else_code = [1] { AssignExpr @[0] { }; }; }; WhileLoop @[9] { ProgEl_List @.loop_code = [4] { ProgramCall @[0] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; NetCounterIncr @[1] { }; IfContinue @[2] { }; IfBreak @[3] { }; }; }; MethodCall @[10] { ProgArg_List @.meth_args = [0] { }; }; If @[11] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; If @[12] { ProgEl_List @.true_code = [1] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; }; }; NetUpdateView @[13] { }; }; }; Program @["LeabraCycle"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [1] { ProgVar @["network"] { }; }; ProgVar_List @.vars = [1] { ProgVar @["update_net_view"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [0] { }; ProgEl_List @.prog_code = [3] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; NetUpdateView @[1] { }; ProgramCall @[2] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; }; }; Program @["LeabraTestCycle"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [1] { ProgVar @["network"] { }; }; ProgVar_List @.vars = [1] { ProgVar @["update_net_view"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [0] { }; ProgEl_List @.prog_code = [3] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; NetUpdateView @[1] { }; ProgramCall @[2] { ProgArg_List @.prog_args = [1] { ProgArg @[0] { }; }; }; }; }; Program @["ApplyInputs"] { ProgObjList @.objs = [1] { LayerWriter @["LayerWriter_0"] { LayerDataEl_List @.layer_data = [5] { LayerWriterEl @[0] { }; LayerWriterEl @[1] { }; LayerWriterEl @[2] { }; LayerWriterEl @[3] { }; LayerWriterEl @[4] { }; }; }; }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["input_data"] { }; }; ProgVar_List @.vars = [1] { ProgVar @["LayerWriter_0"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [2] { MethodCall @[0] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MethodCall @[1] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; }; ProgEl_List @.prog_code = [2] { MethodCall @[0] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; }; }; Program @["ApplyInputsTest"] { ProgObjList @.objs = [1] { LayerWriter @["LayerWriter_0"] { LayerDataEl_List @.layer_data = [4] { LayerWriterEl @[0] { }; LayerWriterEl @[1] { }; LayerWriterEl @[2] { }; LayerWriterEl @[3] { }; }; }; }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["TestWP"] { }; }; ProgVar_List @.vars = [1] { ProgVar @["LayerWriter_0"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [2] { MethodCall @[0] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MethodCall @[1] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; }; ProgEl_List @.prog_code = [2] { MethodCall @[0] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; }; }; Program @["ApplyInputsTrnTest"] { ProgObjList @.objs = [1] { LayerWriter @["LayerWriter_0"] { LayerDataEl_List @.layer_data = [4] { LayerWriterEl @[0] { }; LayerWriterEl @[1] { }; LayerWriterEl @[2] { }; LayerWriterEl @[3] { }; }; }; }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["input_data"] { }; }; ProgVar_List @.vars = [1] { ProgVar @["LayerWriter_0"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [2] { MethodCall @[0] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MethodCall @[1] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; }; ProgEl_List @.prog_code = [2] { MethodCall @[0] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; }; }; Program @["LeabraTrialMonitor"] { ProgObjList @.objs = [1] { NetMonitor @["trial_netmon"] { NetMonItem_List @.items = [10] { NetMonItem @["batch"] { }; NetMonItem @["epoch"] { }; NetMonItem @["trial"] { }; NetMonItem @["trial_name"] { }; NetMonItem @["group_name"] { }; NetMonItem @["phase_no"] { }; NetMonItem @["minus_cycles"] { }; NetMonItem @["sse"] { }; NetMonItem @["ext_rew"] { }; NetMonItem @["Output_sse"] { }; }; }; }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [1] { ProgVar @["network"] { }; }; ProgVar_List @.vars = [2] { ProgVar @["trial_mon_data"] { }; ProgVar @["trial_netmon"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [3] { MethodCall @[0] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MethodCall @[1] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[2] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; }; ProgEl_List @.prog_code = [4] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; MethodCall @[2] { ProgArg_List @.meth_args = [0] { }; }; MethodCall @[3] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; }; }; Program @["LeabraTrnTestTrialMonitor"] { ProgObjList @.objs = [1] { NetMonitor @["trial_netmon"] { NetMonItem_List @.items = [10] { NetMonItem @["batch"] { }; NetMonItem @["epoch"] { }; NetMonItem @["trial"] { }; NetMonItem @["trial_name"] { }; NetMonItem @["group_name"] { }; NetMonItem @["phase_no"] { }; NetMonItem @["minus_cycles"] { }; NetMonItem @["sse"] { }; NetMonItem @["ext_rew"] { }; NetMonItem @["Output_sse"] { }; }; }; }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [1] { ProgVar @["network"] { }; }; ProgVar_List @.vars = [2] { ProgVar @["trial_mon_data"] { }; ProgVar @["trial_netmon"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [3] { MethodCall @[0] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MethodCall @[1] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[2] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; }; ProgEl_List @.prog_code = [4] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; MethodCall @[2] { ProgArg_List @.meth_args = [0] { }; }; MethodCall @[3] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; }; }; Program @["Cycle_Monitor"] { ProgObjList @.objs = [1] { NetMonitor @["cycle_netmon"] { NetMonItem_List @.items = [16] { NetMonItem @["batch"] { }; NetMonItem @["epoch"] { }; NetMonItem @["trial"] { }; NetMonItem @["trial_name"] { }; NetMonItem @["group_name"] { }; NetMonItem @["phase_no"] { }; NetMonItem @["cycle"] { }; NetMonItem @["sse"] { }; NetMonItem @["ext_rew"] { }; NetMonItem @["STN_acts_avg"] { }; NetMonItem @["Motor__acts_avg"] { }; NetMonItem @["Thalam_acts_avg"] { }; NetMonItem @["GP_Int_acts_avg"] { }; NetMonItem @["GP_Ext_acts_avg"] { }; NetMonItem @["Output_act"] { }; NetMonItem @["Output_units_0_act"] { }; }; }; }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [1] { ProgVar @["network"] { }; }; ProgVar_List @.vars = [2] { ProgVar @["cycle_mon_data"] { }; ProgVar @["cycle_netmon"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [3] { MethodCall @[0] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MethodCall @[1] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[2] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; }; ProgEl_List @.prog_code = [5] { IfReturn @[0] { }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; MethodCall @[2] { ProgArg_List @.meth_args = [0] { }; }; MethodCall @[3] { ProgArg_List @.meth_args = [0] { }; }; MethodCall @[4] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; }; }; Program @["LeabraEpochMonitor"] { ProgObjList @.objs = [1] { NetMonitor @["epoch_netmon"] { NetMonItem_List @.items = [6] { NetMonItem @["batch"] { }; NetMonItem @["epoch"] { }; NetMonItem @["avg_sse"] { }; NetMonItem @["cnt_err"] { }; NetMonItem @["avg_ext_rew"] { }; NetMonItem @["avg_cycles"] { }; }; }; }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [1] { ProgVar @["network"] { }; }; ProgVar_List @.vars = [3] { ProgVar @["epoch_mon_data"] { }; ProgVar @["epoch_netmon"] { }; ProgVar @["epoch_timer"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [4] { AssignExpr @[0] { }; MethodCall @[1] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MethodCall @[2] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[3] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; }; ProgEl_List @.prog_code = [4] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; AssignExpr @[2] { }; MethodCall @[3] { ProgArg_List @.meth_args = [0] { }; }; }; }; Program @["LeabraTrnTestEpochMonitor"] { ProgObjList @.objs = [1] { NetMonitor @["epoch_netmon"] { NetMonItem_List @.items = [6] { NetMonItem @["batch"] { }; NetMonItem @["epoch"] { }; NetMonItem @["avg_sse"] { }; NetMonItem @["cnt_err"] { }; NetMonItem @["avg_ext_rew"] { }; NetMonItem @["avg_cycles"] { }; }; }; }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [1] { ProgVar @["network"] { }; }; ProgVar_List @.vars = [3] { ProgVar @["epoch_mon_data"] { }; ProgVar @["epoch_netmon"] { }; ProgVar @["epoch_timer"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [4] { AssignExpr @[0] { }; MethodCall @[1] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MethodCall @[2] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; MethodCall @[3] { ProgArg_List @.meth_args = [1] { ProgArg @[0] { }; }; }; }; ProgEl_List @.prog_code = [4] { MethodCall @[0] { ProgArg_List @.meth_args = [0] { }; }; MethodCall @[1] { ProgArg_List @.meth_args = [0] { }; }; AssignExpr @[2] { }; MethodCall @[3] { ProgArg_List @.meth_args = [0] { }; }; }; }; Program @["SaveWeights"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [1] { ProgVar @["network"] { }; }; ProgVar_List @.vars = [6] { ProgVar @["tag"] { }; ProgVar @["wts_subdir"] { }; ProgVar @["fname"] { }; ProgVar @["epoch_str"] { }; ProgVar @["batch_str"] { }; ProgVar @["final_tag"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [0] { }; ProgEl_List @.prog_code = [6] { IfReturn @[0] { }; MiscCall @[1] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; MiscCall @[2] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; AssignExpr @[3] { }; MethodCall @[4] { ProgArg_List @.meth_args = [4] { ProgArg @[0] { }; ProgArg @[1] { }; ProgArg @[2] { }; ProgArg @[3] { }; }; }; MethodCall @[5] { ProgArg_List @.meth_args = [2] { ProgArg @[0] { }; ProgArg @[1] { }; }; }; }; }; Program @["DA_Rew_Punish"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [2] { ProgVar @["network"] { }; ProgVar @["input_data"] { }; }; ProgVar_List @.vars = [16] { ProgVar @["num_intact_snc_units"] { }; ProgVar @["active_da_units"] { }; ProgVar @["snc_size"] { }; ProgVar @["k"] { }; ProgVar @["sse"] { }; ProgVar @["act0"] { }; ProgVar @["act1"] { }; ProgVar @["SNc"] { }; ProgVar @["Output"] { }; ProgVar @["Motor_Cortex"] { }; ProgVar @["matrisom_unitspec"] { }; ProgVar @["i"] { }; ProgVar @["tonic_DA"] { }; ProgVar @["op_sse"] { }; ProgVar @["DA_dip_val"] { }; ProgVar @["DA_burst_val"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [0] { }; ProgEl_List @.prog_code = [6] { AssignExpr @[0] { }; AssignExpr @[1] { }; AssignExpr @[2] { }; ForLoop @[3] { ProgEl_List @.loop_code = [1] { MemberAssign @[0] { }; }; }; If @[4] { ProgEl_List @.true_code = [7] { If @[0] { ProgEl_List @.true_code = [2] { ForLoop @[0] { ProgEl_List @.loop_code = [1] { MemberAssign @[0] { }; }; }; MemberAssign @[1] { }; }; }; Else @[1] { ProgEl_List @.else_code = [2] { ForLoop @[0] { ProgEl_List @.loop_code = [1] { MemberAssign @[0] { }; }; }; MemberAssign @[1] { }; }; }; AssignExpr @[2] { }; AssignExpr @[3] { }; ForLoop @[4] { ProgEl_List @.loop_code = [1] { CssExpr @[0] { }; }; }; If @[5] { ProgEl_List @.true_code = [6] { MemberAssign @[0] { }; MemberAssign @[1] { }; MemberAssign @[2] { }; MemberAssign @[3] { }; CssExpr @[4] { }; CssExpr @[5] { }; }; }; Else @[6] { ProgEl_List @.else_code = [6] { MemberAssign @[0] { }; MemberAssign @[1] { }; MemberAssign @[2] { }; MemberAssign @[3] { }; CssExpr @[4] { }; CssExpr @[5] { }; }; }; }; }; Else @[5] { ProgEl_List @.else_code = [2] { ForLoop @[0] { ProgEl_List @.loop_code = [2] { MemberAssign @[0] { }; MemberAssign @[1] { }; }; }; ForLoop @[1] { ProgEl_List @.loop_code = [1] { CssExpr @[0] { }; }; }; }; }; }; }; Program @["Calc_GoNoGo"] { ProgObjList @.objs = [0] { }; ProgType_List @.types = [0] { }; ProgVar_List @.args = [1] { ProgVar @["network"] { }; }; ProgVar_List @.vars = [17] { ProgVar @["i"] { }; ProgVar @["j"] { }; ProgVar @["B_NoGoR1"] { }; ProgVar @["B_NoGoR2"] { }; ProgVar @["B_GoR2"] { }; ProgVar @["B_GoR1"] { }; ProgVar @["A_NoGoR2"] { }; ProgVar @["A_GoR2"] { }; ProgVar @["A_NoGoR1"] { }; ProgVar @["A_GoR1"] { }; ProgVar @["gn_pos"] { }; ProgVar @["nogo_pos"] { }; ProgVar @["nogo_neg"] { }; ProgVar @["gn_neg"] { }; ProgVar @["gn_A_R1"] { }; ProgVar @["gn_B_R1"] { }; ProgVar @["out_data"] { }; }; Function_List @.functions = [0] { }; ProgEl_List @.init_code = [1] { ResetDataRows @[0] { }; }; ProgEl_List @.prog_code = [31] { AssignExpr @[0] { }; AssignExpr @[1] { }; AssignExpr @[2] { }; AssignExpr @[3] { }; AssignExpr @[4] { }; AssignExpr @[5] { }; AssignExpr @[6] { }; AssignExpr @[7] { }; AssignExpr @[8] { }; AssignExpr @[9] { }; AssignExpr @[10] { }; AssignExpr @[11] { }; AssignExpr @[12] { }; AssignExpr @[13] { }; ForLoop @[14] { ProgEl_List @.loop_code = [1] { ForLoop @[0] { ProgEl_List @.loop_code = [1] { VarIncr @[0] { }; }; }; }; }; ForLoop @[15] { ProgEl_List @.loop_code = [1] { ForLoop @[0] { ProgEl_List @.loop_code = [1] { VarIncr @[0] { }; }; }; }; }; ForLoop @[16] { ProgEl_List @.loop_code = [1] { ForLoop @[0] { ProgEl_List @.loop_code = [1] { VarIncr @[0] { }; }; }; }; }; ForLoop @[17] { ProgEl_List @.loop_code = [1] { ForLoop @[0] { ProgEl_List @.loop_code = [1] { VarIncr @[0] { }; }; }; }; }; ForLoop @[18] { ProgEl_List @.loop_code = [1] { ForLoop @[0] { ProgEl_List @.loop_code = [1] { VarIncr @[0] { }; }; }; }; }; ForLoop @[19] { ProgEl_List @.loop_code = [1] { ForLoop @[0] { ProgEl_List @.loop_code = [1] { VarIncr @[0] { }; }; }; }; }; ForLoop @[20] { ProgEl_List @.loop_code = [1] { ForLoop @[0] { ProgEl_List @.loop_code = [1] { VarIncr @[0] { }; }; }; }; }; ForLoop @[21] { ProgEl_List @.loop_code = [1] { ForLoop @[0] { ProgEl_List @.loop_code = [1] { VarIncr @[0] { }; }; }; }; }; AssignExpr @[22] { }; AssignExpr @[23] { }; AssignExpr @[24] { }; AssignExpr @[25] { }; AssignExpr @[26] { }; AssignExpr @[27] { }; AddNewDataRow @[28] { }; DataVarProg @[29] { }; DoneWritingDataRow @[30] { }; }; }; }; }; taViewer_List @.viewers = [1] { MainWindowViewer @["Browser"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_win_lft"] { }; UserDataItem @["view_win_top"] { }; UserDataItem @["view_win_wd"] { }; UserDataItem @["view_win_ht"] { }; UserDataItem @["view_win_iconified"] { }; UserDataItem @["view_splitter_state"] { }; }; ToolBar_List @.toolbars = [1] { ToolBar @["Application"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_win_visible"] { }; }; }; }; FrameViewer_List @.frames = [3] { BrowseViewerTaBase @["Tree"] { }; PanelViewer @["Panels"] { }; T3PanelViewer @["T3Frames"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_panel_selected"] { }; }; T3Panel_List @.panels = [7] { T3Panel @["Frame2"] { T3DataView_List @.root_view.children = [1] { NetView @["BGNet_View"] { T3Annotation_List @.annotations = [0] { }; T3DataView_List @.annote_children = [0] { }; ScaleRange_List @.scale_ranges = [56] { ScaleRange @[0] { }; ScaleRange @[1] { }; ScaleRange @[2] { }; ScaleRange @[3] { }; ScaleRange @[4] { }; ScaleRange @[5] { }; ScaleRange @[6] { }; ScaleRange @[7] { }; ScaleRange @[8] { }; ScaleRange @[9] { }; ScaleRange @[10] { }; ScaleRange @[11] { }; ScaleRange @[12] { }; ScaleRange @[13] { }; ScaleRange @[14] { }; ScaleRange @[15] { }; ScaleRange @[16] { }; ScaleRange @[17] { }; ScaleRange @[18] { }; ScaleRange @[19] { }; ScaleRange @[20] { }; ScaleRange @[21] { }; ScaleRange @[22] { }; ScaleRange @[23] { }; ScaleRange @[24] { }; ScaleRange @[25] { }; ScaleRange @[26] { }; ScaleRange @[27] { }; ScaleRange @[28] { }; ScaleRange @[29] { }; ScaleRange @[30] { }; ScaleRange @[31] { }; ScaleRange @[32] { }; ScaleRange @[33] { }; ScaleRange @[34] { }; ScaleRange @[35] { }; ScaleRange @[36] { }; ScaleRange @[37] { }; ScaleRange @[38] { }; ScaleRange @[39] { }; ScaleRange @[40] { }; ScaleRange @[41] { }; ScaleRange @[42] { }; ScaleRange @[43] { }; ScaleRange @[44] { }; ScaleRange @[45] { }; ScaleRange @[46] { }; ScaleRange @[47] { }; ScaleRange @[48] { }; ScaleRange @[49] { }; ScaleRange @[50] { }; ScaleRange @[51] { }; ScaleRange @[52] { }; ScaleRange @[53] { }; ScaleRange @[54] { }; ScaleRange @[55] { }; }; }; }; T3SavedView_List @.saved_views = [10] { T3SavedView @["Vw_0"] { }; T3SavedView @["Vw_1"] { }; T3SavedView @["Vw_2"] { }; T3SavedView @["Vw_3"] { }; T3SavedView @["Vw_4"] { }; T3SavedView @["Vw_5"] { }; T3SavedView @["Vw_6"] { }; T3SavedView @["Vw_7"] { }; T3SavedView @["Vw_8"] { }; T3SavedView @["Vw_9"] { }; }; }; T3Panel @["CycleOutputData"] { T3DataView_List @.root_view.children = [1] { GraphTableView @["CycleOutputData_Graph"] { T3DataView_List @.children = [16] { GraphColView @["batch"] { }; GraphColView @["epoch"] { }; GraphColView @["trial"] { }; GraphColView @["trial_name"] { }; GraphColView @["group_name"] { }; GraphColView @["phase_no"] { }; GraphColView @["cycle"] { }; GraphColView @["sse"] { }; GraphColView @["ext_rew"] { }; GraphColView @["STN_acts_avg"] { }; GraphColView @["Motor__acts_avg"] { }; GraphColView @["Thalam_acts_avg"] { }; GraphColView @["GP_Int_acts_avg"] { }; GraphColView @["GP_Ext_acts_avg"] { }; GraphColView @["Output_act"] { }; GraphColView @["Output_units_0_act"] { }; }; T3Annotation_List @.annotations = [0] { }; T3DataView_List @.annote_children = [0] { }; GraphPlotView_List @.plots = [16] { GraphPlotView @["CycleOutputData_Graph_plot_1"] { }; GraphPlotView @["CycleOutputData_Graph_plot_2"] { }; GraphPlotView @["CycleOutputData_Graph_plot_3"] { }; GraphPlotView @["CycleOutputData_Graph_plot_4"] { }; GraphPlotView @["CycleOutputData_Graph_plot_5"] { }; GraphPlotView @["CycleOutputData_Graph_plot_6"] { }; GraphPlotView @["CycleOutputData_Graph_plot_7"] { }; GraphPlotView @["CycleOutputData_Graph_plot_8"] { }; GraphPlotView @["CycleOutputData_Graph_plot_9"] { }; GraphPlotView @["CycleOutputData_Graph_plot_10"] { }; GraphPlotView @["CycleOutputData_Graph_plot_11"] { }; GraphPlotView @["CycleOutputData_Graph_plot_12"] { }; GraphPlotView @["CycleOutputData_Graph_plot_13"] { }; GraphPlotView @["CycleOutputData_Graph_plot_14"] { }; GraphPlotView @["CycleOutputData_Graph_plot_15"] { }; GraphPlotView @["CycleOutputData_Graph_plot_16"] { }; }; GraphPlotView_List @.errbars = [16] { GraphPlotView @["CycleOutputData_Graph_err_1"] { }; GraphPlotView @["CycleOutputData_Graph_err_2"] { }; GraphPlotView @["CycleOutputData_Graph_err_3"] { }; GraphPlotView @["CycleOutputData_Graph_err_4"] { }; GraphPlotView @["CycleOutputData_Graph_err_5"] { }; GraphPlotView @["CycleOutputData_Graph_err_6"] { }; GraphPlotView @["CycleOutputData_Graph_err_7"] { }; GraphPlotView @["CycleOutputData_Graph_err_8"] { }; GraphPlotView @["CycleOutputData_Graph_err_9"] { }; GraphPlotView @["CycleOutputData_Graph_err_10"] { }; GraphPlotView @["CycleOutputData_Graph_err_11"] { }; GraphPlotView @["CycleOutputData_Graph_err_12"] { }; GraphPlotView @["CycleOutputData_Graph_err_13"] { }; GraphPlotView @["CycleOutputData_Graph_err_14"] { }; GraphPlotView @["CycleOutputData_Graph_err_15"] { }; GraphPlotView @["CycleOutputData_Graph_err_16"] { }; }; }; }; T3SavedView_List @.saved_views = [10] { T3SavedView @["Vw_0"] { }; T3SavedView @["Vw_1"] { }; T3SavedView @["Vw_2"] { }; T3SavedView @["Vw_3"] { }; T3SavedView @["Vw_4"] { }; T3SavedView @["Vw_5"] { }; T3SavedView @["Vw_6"] { }; T3SavedView @["Vw_7"] { }; T3SavedView @["Vw_8"] { }; T3SavedView @["Vw_9"] { }; }; }; T3Panel @["EpochOutputData"] { T3DataView_List @.root_view.children = [1] { GraphTableView @["EpochOutputData_Graph"] { T3DataView_List @.children = [6] { GraphColView @["batch"] { }; GraphColView @["epoch"] { }; GraphColView @["avg_sse"] { }; GraphColView @["cnt_err"] { }; GraphColView @["avg_ext_rew"] { }; GraphColView @["avg_cycles"] { }; }; T3Annotation_List @.annotations = [0] { }; T3DataView_List @.annote_children = [0] { }; GraphPlotView_List @.plots = [16] { GraphPlotView @["EpochOutputData_Graph_plot_1"] { }; GraphPlotView @["EpochOutputData_Graph_plot_2"] { }; GraphPlotView @["EpochOutputData_Graph_plot_3"] { }; GraphPlotView @["EpochOutputData_Graph_plot_4"] { }; GraphPlotView @["EpochOutputData_Graph_plot_5"] { }; GraphPlotView @["EpochOutputData_Graph_plot_6"] { }; GraphPlotView @["EpochOutputData_Graph_plot_7"] { }; GraphPlotView @["EpochOutputData_Graph_plot_8"] { }; GraphPlotView @["EpochOutputData_Graph_plot_9"] { }; GraphPlotView @["EpochOutputData_Graph_plot_10"] { }; GraphPlotView @["EpochOutputData_Graph_plot_11"] { }; GraphPlotView @["EpochOutputData_Graph_plot_12"] { }; GraphPlotView @["EpochOutputData_Graph_plot_13"] { }; GraphPlotView @["EpochOutputData_Graph_plot_14"] { }; GraphPlotView @["EpochOutputData_Graph_plot_15"] { }; GraphPlotView @["EpochOutputData_Graph_plot_16"] { }; }; GraphPlotView_List @.errbars = [16] { GraphPlotView @["EpochOutputData_Graph_err_1"] { }; GraphPlotView @["EpochOutputData_Graph_err_2"] { }; GraphPlotView @["EpochOutputData_Graph_err_3"] { }; GraphPlotView @["EpochOutputData_Graph_err_4"] { }; GraphPlotView @["EpochOutputData_Graph_err_5"] { }; GraphPlotView @["EpochOutputData_Graph_err_6"] { }; GraphPlotView @["EpochOutputData_Graph_err_7"] { }; GraphPlotView @["EpochOutputData_Graph_err_8"] { }; GraphPlotView @["EpochOutputData_Graph_err_9"] { }; GraphPlotView @["EpochOutputData_Graph_err_10"] { }; GraphPlotView @["EpochOutputData_Graph_err_11"] { }; GraphPlotView @["EpochOutputData_Graph_err_12"] { }; GraphPlotView @["EpochOutputData_Graph_err_13"] { }; GraphPlotView @["EpochOutputData_Graph_err_14"] { }; GraphPlotView @["EpochOutputData_Graph_err_15"] { }; GraphPlotView @["EpochOutputData_Graph_err_16"] { }; }; }; }; T3SavedView_List @.saved_views = [10] { T3SavedView @["Vw_0"] { }; T3SavedView @["Vw_1"] { }; T3SavedView @["Vw_2"] { }; T3SavedView @["Vw_3"] { }; T3SavedView @["Vw_4"] { }; T3SavedView @["Vw_5"] { }; T3SavedView @["Vw_6"] { }; T3SavedView @["Vw_7"] { }; T3SavedView @["Vw_8"] { }; T3SavedView @["Vw_9"] { }; }; }; T3Panel @["Go_NoGo"] { T3DataView_List @.root_view.children = [1] { GraphTableView @["Go_NoGo_Graph"] { T3DataView_List @.children = [4] { GraphColView @["gn_pos"] { }; GraphColView @["gn_neg"] { }; GraphColView @["nogo_pos"] { }; GraphColView @["nogo_neg"] { }; }; T3Annotation_List @.annotations = [0] { }; T3DataView_List @.annote_children = [0] { }; GraphPlotView_List @.plots = [16] { GraphPlotView @["Go_NoGo_Graph_plot_1"] { }; GraphPlotView @["Go_NoGo_Graph_plot_2"] { }; GraphPlotView @["Go_NoGo_Graph_plot_3"] { }; GraphPlotView @["Go_NoGo_Graph_plot_4"] { }; GraphPlotView @["Go_NoGo_Graph_plot_5"] { }; GraphPlotView @["Go_NoGo_Graph_plot_6"] { }; GraphPlotView @["Go_NoGo_Graph_plot_7"] { }; GraphPlotView @["Go_NoGo_Graph_plot_8"] { }; GraphPlotView @["Go_NoGo_Graph_plot_9"] { }; GraphPlotView @["Go_NoGo_Graph_plot_10"] { }; GraphPlotView @["Go_NoGo_Graph_plot_11"] { }; GraphPlotView @["Go_NoGo_Graph_plot_12"] { }; GraphPlotView @["Go_NoGo_Graph_plot_13"] { }; GraphPlotView @["Go_NoGo_Graph_plot_14"] { }; GraphPlotView @["Go_NoGo_Graph_plot_15"] { }; GraphPlotView @["Go_NoGo_Graph_plot_16"] { }; }; GraphPlotView_List @.errbars = [16] { GraphPlotView @["Go_NoGo_Graph_err_1"] { }; GraphPlotView @["Go_NoGo_Graph_err_2"] { }; GraphPlotView @["Go_NoGo_Graph_err_3"] { }; GraphPlotView @["Go_NoGo_Graph_err_4"] { }; GraphPlotView @["Go_NoGo_Graph_err_5"] { }; GraphPlotView @["Go_NoGo_Graph_err_6"] { }; GraphPlotView @["Go_NoGo_Graph_err_7"] { }; GraphPlotView @["Go_NoGo_Graph_err_8"] { }; GraphPlotView @["Go_NoGo_Graph_err_9"] { }; GraphPlotView @["Go_NoGo_Graph_err_10"] { }; GraphPlotView @["Go_NoGo_Graph_err_11"] { }; GraphPlotView @["Go_NoGo_Graph_err_12"] { }; GraphPlotView @["Go_NoGo_Graph_err_13"] { }; GraphPlotView @["Go_NoGo_Graph_err_14"] { }; GraphPlotView @["Go_NoGo_Graph_err_15"] { }; GraphPlotView @["Go_NoGo_Graph_err_16"] { }; }; }; }; T3SavedView_List @.saved_views = [10] { T3SavedView @["Vw_0"] { }; T3SavedView @["Vw_1"] { }; T3SavedView @["Vw_2"] { }; T3SavedView @["Vw_3"] { }; T3SavedView @["Vw_4"] { }; T3SavedView @["Vw_5"] { }; T3SavedView @["Vw_6"] { }; T3SavedView @["Vw_7"] { }; T3SavedView @["Vw_8"] { }; T3SavedView @["Vw_9"] { }; }; }; T3Panel @["Go_NoGo_Group"] { T3DataView_List @.root_view.children = [1] { GraphTableView @["Go_NoGo_Group_Graph"] { T3DataView_List @.children = [4] { GraphColView @["gn_pos_mean"] { }; GraphColView @["gn_pos_sem"] { }; GraphColView @["gn_neg_mean"] { }; GraphColView @["gn_neg_sem"] { }; }; T3Annotation_List @.annotations = [0] { }; T3DataView_List @.annote_children = [0] { }; GraphPlotView_List @.plots = [16] { GraphPlotView @["Go_NoGo_Group_Graph_plot_1"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_2"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_3"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_4"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_5"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_6"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_7"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_8"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_9"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_10"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_11"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_12"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_13"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_14"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_15"] { }; GraphPlotView @["Go_NoGo_Group_Graph_plot_16"] { }; }; GraphPlotView_List @.errbars = [16] { GraphPlotView @["Go_NoGo_Group_Graph_err_1"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_2"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_3"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_4"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_5"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_6"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_7"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_8"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_9"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_10"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_11"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_12"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_13"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_14"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_15"] { }; GraphPlotView @["Go_NoGo_Group_Graph_err_16"] { }; }; }; }; T3SavedView_List @.saved_views = [10] { T3SavedView @["Vw_0"] { }; T3SavedView @["Vw_1"] { }; T3SavedView @["Vw_2"] { }; T3SavedView @["Vw_3"] { }; T3SavedView @["Vw_4"] { }; T3SavedView @["Vw_5"] { }; T3SavedView @["Vw_6"] { }; T3SavedView @["Vw_7"] { }; T3SavedView @["Vw_8"] { }; T3SavedView @["Vw_9"] { }; }; }; T3Panel @["TrnTestEpochOutputData_Group"] { T3DataView_List @.root_view.children = [1] { GraphTableView @["TrnTestEpochOutputData_Group_Graph"] { T3DataView_List @.children = [5] { GraphColView @["epoch_group"] { }; GraphColView @["cnt_err_mean"] { }; GraphColView @["cnt_err_sem"] { }; GraphColView @["avg_sse_mean"] { }; GraphColView @["avg_sse_sem"] { }; }; T3Annotation_List @.annotations = [0] { }; T3DataView_List @.annote_children = [0] { }; GraphPlotView_List @.plots = [16] { GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_1"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_2"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_3"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_4"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_5"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_6"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_7"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_8"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_9"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_10"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_11"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_12"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_13"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_14"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_15"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_16"] { }; }; GraphPlotView_List @.errbars = [16] { GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_1"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_2"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_3"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_4"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_5"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_6"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_7"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_8"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_9"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_10"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_11"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_12"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_13"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_14"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_15"] { }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_16"] { }; }; }; }; T3SavedView_List @.saved_views = [10] { T3SavedView @["Vw_0"] { }; T3SavedView @["Vw_1"] { }; T3SavedView @["Vw_2"] { }; T3SavedView @["Vw_3"] { }; T3SavedView @["Vw_4"] { }; T3SavedView @["Vw_5"] { }; T3SavedView @["Vw_6"] { }; T3SavedView @["Vw_7"] { }; T3SavedView @["Vw_8"] { }; T3SavedView @["Vw_9"] { }; }; }; T3Panel @["TrnTestEpochOutputData"] { T3DataView_List @.root_view.children = [1] { GraphTableView @["TrnTestEpochOutputData_Graph"] { T3DataView_List @.children = [6] { GraphColView @["batch"] { }; GraphColView @["epoch"] { }; GraphColView @["avg_sse"] { }; GraphColView @["cnt_err"] { }; GraphColView @["avg_ext_rew"] { }; GraphColView @["avg_cycles"] { }; }; T3Annotation_List @.annotations = [0] { }; T3DataView_List @.annote_children = [0] { }; GraphPlotView_List @.plots = [16] { GraphPlotView @["TrnTestEpochOutputData_Graph_plot_1"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_2"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_3"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_4"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_5"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_6"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_7"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_8"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_9"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_10"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_11"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_12"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_13"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_14"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_15"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_16"] { }; }; GraphPlotView_List @.errbars = [16] { GraphPlotView @["TrnTestEpochOutputData_Graph_err_1"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_2"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_3"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_4"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_5"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_6"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_7"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_8"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_9"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_10"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_11"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_12"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_13"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_14"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_15"] { }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_16"] { }; }; }; }; T3SavedView_List @.saved_views = [10] { T3SavedView @["Vw_0"] { }; T3SavedView @["Vw_1"] { }; T3SavedView @["Vw_2"] { }; T3SavedView @["Vw_3"] { }; T3SavedView @["Vw_4"] { }; T3SavedView @["Vw_5"] { }; T3SavedView @["Vw_6"] { }; T3SavedView @["Vw_7"] { }; T3SavedView @["Vw_8"] { }; T3SavedView @["Vw_9"] { }; }; }; }; }; }; DockViewer_List @.docks = [1] { ToolBoxDockViewer @["Tools"] { UserDataItem_List @*(.user_data_) { UserDataItem @["view_win_lft"] { }; UserDataItem @["view_win_top"] { }; UserDataItem @["view_win_wd"] { }; UserDataItem @["view_win_ht"] { }; UserDataItem @["view_win_iconified"] { }; UserDataItem @["view_visible"] { }; }; }; }; }; }; Network_Group @.networks = [1] { LeabraNetwork @["BGNet"] { UserDataItem_List @*(.user_data_) { UserDataItem @["cos_diff"] { }; UserDataItem @["cos_err"] { }; UserDataItem @["norm_err"] { }; UserDataItem @["ext_rew"] { }; UserDataItem @["maxda"] { }; UserDataItem @["minus_output_name"] { }; UserDataItem @["minus_cycles"] { }; UserDataItem @["ct_cycle"] { }; UserDataItem @["phase_no"] { }; UserDataItem @["phase"] { }; UserDataItem @["sse"] { }; UserDataItem @["output_name"] { }; UserDataItem @["trial_name"] { }; UserDataItem @["group_name"] { }; UserDataItem @["time"] { }; UserDataItem @["cycle"] { }; UserDataItem @["tick"] { }; UserDataItem @["trial"] { }; UserDataItem @["group"] { }; UserDataItem @["epoch"] { }; UserDataItem @["batch"] { }; }; BaseSpec_Group @.specs = [3] { ConSpec @["ConSpec_0"] { BaseSpec_Group @.children = [0] { }; }; UniformRndPrjnSpec @["STN_GPe_RndPrjnSpec_0"] { BaseSpec_Group @.children = [0] { }; }; UniformRndPrjnSpec @["GPe_STN_RndPrjnSpec_1"] { BaseSpec_Group @.children = [0] { }; }; BaseSpec_Group @.gp["LeabraPrjns"] = [11] { FullPrjnSpec @["FullPrjnSpec_0"] { BaseSpec_Group @.children = [0] { }; }; OneToOnePrjnSpec @["OneToOne"] { BaseSpec_Group @.children = [0] { }; }; TesselPrjnSpec @["Striatum_GPext"] { BaseSpec_Group @.children = [1] { TesselPrjnSpec @["PFC_Act_Deep"] { BaseSpec_Group @.children = [0] { }; TessEl_List @.send_offs = [18] { TessEl @[0] { }; TessEl @[1] { }; TessEl @[2] { }; TessEl @[3] { }; TessEl @[4] { }; TessEl @[5] { }; TessEl @[6] { }; TessEl @[7] { }; TessEl @[8] { }; TessEl @[9] { }; TessEl @[10] { }; TessEl @[11] { }; TessEl @[12] { }; TessEl @[13] { }; TessEl @[14] { }; TessEl @[15] { }; TessEl @[16] { }; TessEl @[17] { }; }; }; }; TessEl_List @.send_offs = [18] { TessEl @[0] { }; TessEl @[1] { }; TessEl @[2] { }; TessEl @[3] { }; TessEl @[4] { }; TessEl @[5] { }; TessEl @[6] { }; TessEl @[7] { }; TessEl @[8] { }; TessEl @[9] { }; TessEl @[10] { }; TessEl @[11] { }; TessEl @[12] { }; TessEl @[13] { }; TessEl @[14] { }; TessEl @[15] { }; TessEl @[16] { }; TessEl @[17] { }; }; }; TesselPrjnSpec @["dMatrosomesGP"] { BaseSpec_Group @.children = [0] { }; TessEl_List @.send_offs = [9] { TessEl @[0] { }; TessEl @[1] { }; TessEl @[2] { }; TessEl @[3] { }; TessEl @[4] { }; TessEl @[5] { }; TessEl @[6] { }; TessEl @[7] { }; TessEl @[8] { }; }; }; TesselPrjnSpec @["SNc_GO"] { BaseSpec_Group @.children = [0] { }; TessEl_List @.send_offs = [12] { TessEl @[0] { }; TessEl @[1] { }; TessEl @[2] { }; TessEl @[3] { }; TessEl @[4] { }; TessEl @[5] { }; TessEl @[6] { }; TessEl @[7] { }; TessEl @[8] { }; TessEl @[9] { }; TessEl @[10] { }; TessEl @[11] { }; }; }; TesselPrjnSpec @["MotorCortex_Striatum"] { BaseSpec_Group @.children = [0] { }; TessEl_List @.send_offs = [2] { TessEl @[0] { }; TessEl @[1] { }; }; }; TesselPrjnSpec @["SNc_NOGO"] { BaseSpec_Group @.children = [0] { }; TessEl_List @.send_offs = [12] { TessEl @[0] { }; TessEl @[1] { }; TessEl @[2] { }; TessEl @[3] { }; TessEl @[4] { }; TessEl @[5] { }; TessEl @[6] { }; TessEl @[7] { }; TessEl @[8] { }; TessEl @[9] { }; TessEl @[10] { }; TessEl @[11] { }; }; }; TesselPrjnSpec @["Striatum_GPInt"] { BaseSpec_Group @.children = [0] { }; TessEl_List @.send_offs = [9] { TessEl @[0] { }; TessEl @[1] { }; TessEl @[2] { }; TessEl @[3] { }; TessEl @[4] { }; TessEl @[5] { }; TessEl @[6] { }; TessEl @[7] { }; TessEl @[8] { }; }; }; TesselPrjnSpec @["MotorCortex_NoGoStriatum"] { BaseSpec_Group @.children = [0] { }; TessEl_List @.send_offs = [4] { TessEl @[0] { }; TessEl @[1] { }; TessEl @[2] { }; TessEl @[3] { }; }; }; OneToOnePrjnSpec @["OneToOne_2"] { BaseSpec_Group @.children = [0] { }; }; TesselPrjnSpec @["RowToRow"] { BaseSpec_Group @.children = [0] { }; TessEl_List @.send_offs = [9] { TessEl @[0] { }; TessEl @[1] { }; TessEl @[2] { }; TessEl @[3] { }; TessEl @[4] { }; TessEl @[5] { }; TessEl @[6] { }; TessEl @[7] { }; TessEl @[8] { }; }; }; }; BaseSpec_Group @.gp["Connections"] = [9] { LeabraBiasSpec @["LearnBias"] { BaseSpec_Group @.children = [1] { LeabraBiasSpec @["FixedBias"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["FixedFull"] { BaseSpec_Group @.children = [5] { LeabraConSpec @["InhibCons"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["InhibNoGo"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["NoGo_inhib_Go"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["InhibInhib"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["FBtoInhib"] { BaseSpec_Group @.children = [1] { LeabraConSpec @["FFtoInhib"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; }; Schedule @.lrate_sched = [0] { }; }; }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["MtrThal"] { BaseSpec_Group @.children = [4] { LeabraConSpec @["InhibCons"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["NoGo_inhib_Go"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["InhibInhib"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["FBtoInhib"] { BaseSpec_Group @.children = [1] { LeabraConSpec @["FFtoInhib"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; }; Schedule @.lrate_sched = [0] { }; }; }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["GPeGPiInhib"] { BaseSpec_Group @.children = [2] { LeabraConSpec @["ThalInhib"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["Inhib_Learn"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["Fixed"] { BaseSpec_Group @.children = [8] { LeabraConSpec @["STNcons"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["MotorCortex_Striatum"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["Motor_NoGo"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["Input_Motor_Prepotent_"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["InputGo"] { BaseSpec_Group @.children = [1] { LeabraConSpec @["Go_input"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["InputNoGo"] { BaseSpec_Group @.children = [1] { LeabraConSpec @["Go_input"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["STN_GPi"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["Mtr_STNcons"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["Dopamine_D1_"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["SNc_Inhib_D2_"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["Inhib"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; LeabraConSpec @["NoGoGPe"] { BaseSpec_Group @.children = [0] { }; Schedule @.lrate_sched = [0] { }; }; }; BaseSpec_Group @.gp["Units"] = [2] { LeabraUnitSpec @["FixedBiasUnitSpec"] { BaseSpec_Group @.children = [6] { LeabraUnitSpec @["GPExt_UnitSpec"] { BaseSpec_Group @.children = [0] { }; Schedule @.noise_sched = [0] { }; }; LeabraUnitSpec @["OutputUnitSpec"] { BaseSpec_Group @.children = [0] { }; Schedule @.noise_sched = [0] { }; }; LeabraUnitSpec @["Thalamus"] { BaseSpec_Group @.children = [0] { }; Schedule @.noise_sched = [0] { }; }; LeabraUnitSpec @["LearnBiasUnitSpec"] { BaseSpec_Group @.children = [3] { LeabraUnitSpec @["matrisom_unitspec"] { BaseSpec_Group @.children = [0] { }; Schedule @.noise_sched = [0] { }; }; LeabraUnitSpec @["Motor_Cortex_unitspec"] { BaseSpec_Group @.children = [0] { }; Schedule @.noise_sched = [4] { SchedItem @[0] { }; SchedItem @[1] { }; SchedItem @[2] { }; SchedItem @[3] { }; }; }; LeabraUnitSpec @["STN_unitspec"] { BaseSpec_Group @.children = [0] { }; Schedule @.noise_sched = [0] { }; }; }; Schedule @.noise_sched = [0] { }; }; LeabraUnitSpec @["GPInt_UnitSpec"] { BaseSpec_Group @.children = [0] { }; Schedule @.noise_sched = [0] { }; }; LeabraUnitSpec @["InhibUnits"] { BaseSpec_Group @.children = [0] { }; Schedule @.noise_sched = [0] { }; }; }; Schedule @.noise_sched = [0] { }; }; LeabraUnitSpec @["SNc_UnitSpec"] { BaseSpec_Group @.children = [0] { }; Schedule @.noise_sched = [0] { }; }; }; BaseSpec_Group @.gp["LayerSpecs"] = [2] { LeabraLayerSpec @["LayerSpec_0"] { BaseSpec_Group @.children = [8] { LeabraLayerSpec @["Matrisome_layerspec"] { BaseSpec_Group @.children = [0] { }; }; LeabraLayerSpec @["GP_layerspec"] { BaseSpec_Group @.children = [0] { }; }; LeabraLayerSpec @["Thalamus_layerspec"] { BaseSpec_Group @.children = [0] { }; }; LeabraLayerSpec @["Output_layerspec"] { BaseSpec_Group @.children = [0] { }; }; LeabraLayerSpec @["PFC_Out_layerspec"] { BaseSpec_Group @.children = [0] { }; }; LeabraLayerSpec @["InputLayer"] { BaseSpec_Group @.children = [0] { }; }; LeabraLayerSpec @["SNc_layerspec"] { BaseSpec_Group @.children = [0] { }; }; LeabraLayerSpec @["InhibLayers"] { BaseSpec_Group @.children = [0] { }; }; }; }; LeabraLayerSpec @["NoDecayLayers"] { BaseSpec_Group @.children = [2] { LeabraLayerSpec @["STN"] { BaseSpec_Group @.children = [0] { }; }; LeabraLayerSpec @["PFCIn_layerspec"] { BaseSpec_Group @.children = [0] { }; }; }; }; }; }; Layer_Group @.layers = [8] { LeabraLayer @["Input"] { Projection_Group @.projections = [0] { }; Unit_Group @.units = [25] { }; }; LeabraLayer @["SNc"] { Projection_Group @.projections = [0] { }; Unit_Group @.units = [4] { }; }; LeabraLayer @["GP_Int"] { Projection_Group @.projections = [3] { LeabraPrjn @["Fm_GP_Ext"] { }; LeabraPrjn @["Fm_STN"] { }; LeabraPrjn @["Fm_Go"] { }; }; Unit_Group @.units = [4] { }; }; LeabraLayer @["GP_Ext"] { Projection_Group @.projections = [2] { LeabraPrjn @["Fm_STN"] { }; LeabraPrjn @["Fm_NoGo"] { }; }; Unit_Group @.units = [2] { }; }; LeabraLayer @["Thalamus"] { Projection_Group @.projections = [2] { LeabraPrjn @["Fm_GP_Int"] { }; LeabraPrjn @["Fm_Motor_Cortex"] { }; }; Unit_Group @.units = [2] { }; }; LeabraLayer @["Motor_Cortex"] { Projection_Group @.projections = [2] { LeabraPrjn @["Fm_Thalamus"] { }; LeabraPrjn @["Fm_Input"] { }; }; Unit_Group @.units = [4] { }; }; LeabraLayer @["Output"] { Projection_Group @.projections = [2] { LeabraPrjn @["Fm_Motor_Cortex"] { }; LeabraPrjn @["Fm_Motor_Cortex_1"] { }; }; Unit_Group @.units = [2] { }; }; LeabraLayer @["STN"] { Projection_Group @.projections = [2] { LeabraPrjn @["Fm_Motor_Cortex"] { }; LeabraPrjn @["Fm_GP_Ext"] { }; }; Unit_Group @.units = [9] { }; }; Layer_Group @.gp["Striatum"] = [3] { LeabraLayer @["Go"] { Projection_Group @.projections = [5] { LeabraPrjn @["Fm_Input"] { }; LeabraPrjn @["Fm_Striatum_Inhib"] { }; LeabraPrjn @["Fm_SNc"] { }; LeabraPrjn @["Fm_Motor_Cortex"] { }; LeabraPrjn @["Fm_NoGo"] { }; }; Unit_Group @.units = [18] { }; }; LeabraLayer @["NoGo"] { Projection_Group @.projections = [4] { LeabraPrjn @["Fm_Input"] { }; LeabraPrjn @["Fm_Striatum_Inhib"] { }; LeabraPrjn @["Fm_SNc"] { }; LeabraPrjn @["Fm_Motor_Cortex"] { }; }; Unit_Group @.units = [18] { }; }; LeabraLayer @["Striatum_Inhib"] { Projection_Group @.projections = [6] { LeabraPrjn @["Fm_Input"] { }; LeabraPrjn @["Fm_SNc"] { }; LeabraPrjn @["Fm_Motor_Cortex"] { }; LeabraPrjn @["Fm_Striatum_Inhib"] { }; LeabraPrjn @["Fm_Go"] { }; LeabraPrjn @["Fm_NoGo"] { }; }; Unit_Group @.units = [16] { }; }; }; }; Weights_List @.weights = [0] { }; }; }; }; LeabraProject .projects["BG_PS_inhib_e7"] { name="BG_PS_inhib_e7"; desc="mtrNoGoGlut: stronger glutamate projns from ctx to NoGo (mGluR!) nodecMat = no decay b/w phases in matrix, so can learn about recently active synapses stnGPrnd2575: 25 = % con from STN-GPe 75 = % con from GPe to STN noise in motor cortex, so after learning NOGO can try GO on other acton"; tags=; version { major=0; minor=0; step=0; }; license { owner=; license=NO_LIC; org=; year="2011"; custom=; }; wiki_url { sync=0; wiki=; url=; }; docs { name="docs"; el_typ=taDoc; el_def=0; taDoc @["ProjectDocs"] { name="ProjectDocs"; desc=; auto_open=1; web_doc=0; wiki=; url="local"; full_url="local"; text_size=1; text=" = Probabilistic Go and NoGo Learning in the Basal Ganglia: Parkinson's and Medication Effects = * GENERAL USAGE NOTE: To start, it is usually a good idea to do Object/Edit Dialog in the menu just above this text, which will open this documentation in a separate window that you can more easily come back to. If your screen is small, you may also want to make this new window \"Always on Top\": e.g., in Linux, Emergent-logo-at-top-left-> Advanced-> Keep Above Others). Alternatively, you can always return to this document by clicking on the ProjectDocs tab at the top of this middle panel. This project replicates and extends the basic effects of simulated Parkinson's disease and medications on striatal Go-NoGo associations in response to \"positive\" and \"negative\" stimuli, as described in Frank, Seeberger, O'Reilly (2004), which used the Frank (2005) model to predict behavioral dissociations in medicated and non-medicated patients. Here the model includes the subthalamic nucleus, as described in Frank (2006) Neural Networks (the STN was omitted from the initial model for simplicity, but we thought it was important to replicate all the results with the more complete model, as is done here). Also, unlike the original model, this particular version of the model uses a population of inhibitory interneurons to regulate striatal activity rather than the simplified k-winner take all (kWTA) approximation (the basic effects of DA manipulation apply also in the basic model). Including inhibitory interneurons is somewhat more realistic (GABAergic neurons regulate spiny neuron activity in striatum), but the main reason for this is to enable other manipulations of D2 receptor inhibitory effects independently from inhibitory regulation of striatal cells in general (both Go and NoGo) based on inhibitory neuron activity. (see technical note 4 at the bottom for more details). This allows us to explore effects of D2 receptor sensitivity, blockade etc (see also Wiecki et al 2009 and Santesso et al 2009 which used this same model for the same reasons). The model is trained with four stimuli (A,B,C,D) each represented by a column of four input units. When stimulus A is presented, the model is rewarded for selecting R1 (\"approach\") on 80% of trials, and for selecting R2 (\"avoid\") on 20% of trials. The opposite contingencies are simulated for stimulus B, where R1 is incorrect on 80% of trials, while R2 is correct on these trials. Stimuli C and D are associated with 60% positive reinforcement for choosing R1 and R2 respectively. (See technical notes 1 and 2 at the bottom of this document for details on relating this choice of task representation to the empirical probabilistic selection task.) Rewards are associated with DA bursts that drive Go learning in the striatum to encode the stimulus-response-reinforcement conjunction. Non-rewarded trials are associated with DA dips that drive NoGo learning in the striatum so that it learns to suppress the non-rewarding response. Networks are trained for 10 epochs (of 10 trials per stimulus) with this probabilistic structure before assessing relative Go and NoGo learning. After training, the LeabraTestEpoch presents all stimuli to the model one at a time, and assesses the Striatum internal valuation signals using Activation Based Receptive fields in the Striatum. These record the degree to which units become activated by particular input patterns. (See http://grey.colorado.edu/emergent/index.php/Activation_Based_Receptive_Field for more detailed info). In this case, we are interested in the degree to which Striatal Go unit activations are specific to stimulus-response conjunctions leading to positive feedback, and the NoGo unit activations for negative feedback. Thus we measure to Go unit activation for R1 when stimulus A is presented in the input (and similarly, Go units for R2 when stimulus B is presented). Conversely, we can also assess learned NoGo activity for bad (negative) responses (R2 for stimulus A and R1 for stimulus B) The main findings are that (i) intact networks learn both Go to positive responses and NoGo to negative responses, (ii) simulated PD leads to impaired Go learning but intact NoGo learning, and (iii) simulated DA medications lead to the opposite pattern, as found in our empirical studies. (The current project focuses on the internal valuation Go/NoGo signals. See the next project on the BG Projects website for a demonstration that these associations translate to the empirically dissociations on choose-A and avoid-B choice accuracy). The activation based RF's are computed by the ActBasedRField_Go and ActBasedRField_NoGo Programs, which are called by LeabraTestEpoch. Normalized receptive fields are stored for each striatal unit in the ActRFData data table, which is a local object within the ActBasedRField Programs. After the receptive fields for each unit are calculated, we then sum these over all Go units for the relevant stimuli and responses, so that we can calculate total Go activity for good responses and subtract total NoGo activity for good responses. This measure gives us the relative Go-NoGo learning achieved for positive responses, and is an index of positive reinforcement learning (one can also look at raw Go activity, but it is the relative Go-NoGo activation state that dictates the probability of gating a particular response, and hence is most relevant). Similarly, we can compute the total Go and NoGo activity for bad responses, and perform the same subtraction. In this case we expect relatively greater NoGo than Go activity after learning so the Go-NoGo difference should be negative, and is an index of learning from negative outcomes. All of these computations occur in the Calc_GoNoGo Program. The resulting statistics are reported in the Go_NoGo data table, as follows: gn_pos computes relative Go-NoGo striatal activity for positive stimulus-response conjunctions (R1 for A and R2 for B). Networks should learn greater Go than NoGo representations for these positive associations, and if so the value should be positive. gn_neg computes relative Go-NoGo striatal activity for stimulus-response conjunctions that had been predominantly associated with negative outcomes (R2 for A and R1 for B). Networks should learn greater NoGo representations for these negative associations, and if so the value should be negative. (Note that if plotting NoGo-Go associations the sign should be flipped (i.e.the value is positive such that more positive values indicate better learning for both gn_pos and gn_neg), as was done in Frank et al 2004 for comparison with behavioral accuracy results.) PD networks should be impaired at positive Go learning (less positive gn_pos) and medicated networks should be impaired at negative NoGo learning (less negative gn_neg). These effects should be evident both when comparing the groups in the different conditions, or simply testing whether the gn_pos is significantly greater than zero (in PD nets) and whether gn_neg is significantly less than zero (in medicated nets). == Running the networks == For intact network performance, make sure the number of intact SNc units is set to 4 (out of 4 units), the DA burst value is set to 1 (corresponding to maximal phasic burst firing rate) and the DA dip value is set to 0 (minimum phasic dip DA firing rate). These values are set in the [[.PanelTab.MasterControl]] panel. To run a set of networks on the task, Hit Init and Run on the bottom of the [[.PanelTab.MasterControl]]. This will run a set of 25 networks, and store the data in the logfile you just created . (To speed things up, the display on the network and graphs has been turned off. If you want to observe activations while the network is running or monitor the visual graphs in the right frames, click on the appropriate tab that you want to view and check the Display! box on the top left.) Because the data are noisy (probabilistic rewards, noisy unit activity, combined with random input weights which could by chance lead to particularly high Go or NoGo representations in the absence of feedback), we need to average across multiple networks with different sets of initial weights. This is done automatically at the end of running a batch of networks, with resulting mean and standard error of gn_pos and gn_neg reported in the Go_NoGo_Group data table and plotted in the associated bar graph on the right (click on it's tab). (To analyze the data manually, from the [[.PanelTab.Go_NoGo]] data table, click on DataProc->Group Mean SEM. In the dialog box that pops up, make sure the dest_data is set to New Data Table; this will create a new output data log under the AnalysisData_subgroup in the left frame, called Go_NoGo_Group. Also set all the gp_col fields to NULL, and click Ok. Now open the new analysis Go_NoGo_Group log. You should see the statistics (mean, standard error) for each variable that was monitored in the Go_NoGo table, and the bar graph on the tab on the right will also be updated.) You should see the correct patterns of results across the runs, where on average gn_pos is positive and gn_neg is negative (which may not hold for every individual network, just like it doesn't hold for every individual participant in the task -- but you should see relatively more positive gn_pos than gn_neg in virtually every network, even if in some cases they are both positive or both negative). This indicates that striatal activations reflect prior learning that these particular stimulus-response conjunctions have positive or negative value. To save the data for different conditions (and across across multiple networks) for subsequent analysis, save the data file. Open the data->AnalysisData subgroup tree in the '''Tree''' window (far left) and click on Go_NoGo to display the data table (which is where the relative Go NoGo activity values are reported, as described above, with each row representing a single network). Click on Data->Save Data. Make sure to name this logfile with some reference to the current dopamine settings, so that you can properly interpret the data (e.g., name this 'Intact.dat'). == simulating PD and DA meds == To simulate PD, set the number of intact DA units to 1 in the [[.PanelTab.MasterControl]] panel. This sets the number of SNc units that are connected to the Striatum to 2 (out of 4, simulating 50% DA depletion). This reduction in number of intact DA units leads to effectively reduced tonic and phasic DA levels in the Striatum. Hit Init and Run. When it's done, analyze the group mean and standard error as above. You should see a NoGo learning bias across networks (gn_neg is more negative than gn_pos is positive), on average. If you want to save these data, before running the batch, save a new data file from the Go_NoGo object as described above, and give it a new name (e.g, with a PD tag). Note also that the effects of DA depletion are parametric - the more DA units that are eliminated from processing, the more NoGo learning bias is observed. To simulate DA medication, set the number of intact DA units back to 4 units (to simulate the increase in DA synthesis due to levodopa) and simply check off the \"meds\" checkbox in the [[.PanelTab.MasterControl]] panel. This sets the DA dip value so that the SNc dopamine units are prevented from completely dropping to zero activity during negative outcomes (DA dips) due to tonic medication stimulation of dopamine receptors (even if DA neurons themselves actually stop firing, see Frank 2005). (Specifically, DA levels show some residual activation, typically about 0.1 or 0.2 activation levels (subject to noise), during negative outcomes -- so DA levels still 'dip' relative to tonic values, but less so than in the intact case, where DA values can dip to 0, although this is dependent on sufficiently long DA neuron pause durations; see the \"Role of the DA pause\" below). Hit Init and Run. When it's done, analyze the group mean and standard error as above. You should see that medicated networks are impaired at negative outcome learning (ie. they show less negative gn_neg values) compared to intact or PD networks, due to a reduced ability to learn NoGo, similar to the probabilstic reversal simulations (Frank, 2005; see also Cools, Altamirano, & D'Esposito, 2006). == Role of the DA Pause / D2 receptors == Some have argued that while phasic DA bursts encode positive predictions errors, DA dips may not be functionally effective, due to already low baseline firing rates of DA cells (e.g., Bayer & Glimcher, 2005). However, the smaller range of DA dips may be compensated by a counteracting asymmetry in the receptor sensitivity to dips versus bursts. In particular, because DA binds much more strongly to D2 than D1 class of receptors, high-affinity D2 receptors are very sensitive to low tonic DA levels, whereas large increases in DA are required to functionally stimulate D1 receptors (e.g., Goto & Grace, 2005; see more discussion in Cohen & Frank, 2009 and Maia & Frank, 2011). This tonic inhibition of D2 receptors means that these receptors are then very sensitive to the removal of tonic influences during DA dips, which drive NoGo learning in our model. Supporting this account, synaptic plasticity studies show that corticostriatal NoGo synapses are potentiated in the absence of D2 receptor stimulation, and this effect is exaggerated by DA depletion in a rodent model of Parkinson's disease, but reversed by D2 receptor agonist administration (Shen et al, 2008) -- precisely the same pattern of results seen as in human Parkinson's patients on and off DA medications on NoGo learning in the probabilistic task. Further, in healthy subjects, genetic factors controlling striatal D2 receptor function are strongly predictive of individual differences in probabilistic NoGo learning (Frank et al, 2007; Klein et al, 2007; Doll et al; 2011). Recent evidence shows that the magnitude of negative prediction errors is correlated with the duration of DA pauses, rather than in the change in firing rates (Bayer, Lau & Glimcher, 2007). The BG model provides a plausible explanation for why this might be the case: in order to learn from DA dips there has to be sufficient time not just for DA neurons to stop firing, but for DA levels to be cleared from the synapse so that NoGo neurons can be disinhibited. Given a halflife of ~75 ms in dorsal striatum (Gonon, 1997), DA pauses for negative prediction errors lasting up to 350ms would give more than enough time for this signal to be functionally effective. Thus the longer the pause, the greater probability that a given D2 receptor will be unoccupied, and the stronger the learning signal. To see this in the model, in the [[.PanelTab.MasterControl]] panel, change the \"burst/pause duration\" from 30 cycles to 25 cycles. This reduces the number of processing cycles in the reinforcement phase during which simulated DA levels change to their phasic values (relative to tonic DA levels) which drive Go or NoGo learning. Make sure all other settings are default (intact): all 4 SNc units connected, no meds. If you re-run the intact network with this shorter burst/pause duration, you should see that the model shows NoGo learning deficits. This is because there has to be sufficient time for the SNc DA units to deactivate, and for the NoGo units to become disinhibited. The time course of this is dependent on the integration of membrane potentials and sluggishness of the neurons in the model, which is a crude approximation of the temporal dynamics associated with DA reuptake and NoGo unit disinhibition. Notably, although this setting also led to corresponding shortening of the duration of DA bursts, you should see that Go learning is preserved. This is because the Go units that participated in selecting the response were already activated and simply got an additional boost of activity from the phasic burst. == Effects of DA depletion on Learning versus Expression == Note that in all of the above simulations we reduced the number of DA units applied to both the learning phase and the testing phase in which we assess striatal Go/NoGo associations. (In contrast, the manipulations of DA pause duration and medication effects on DA dips only affect phasic DA during prediction errors - thus demonstrating a key role of DA in learning). However, in the model, the DA mechanism that facilitates learning is the same one that affects Go relative to NoGo activation states (i.e. when DA levels change they modulate activation states and this leads to activity dependent plasticity). This means that when we measure Go/NoGo activations in PD networks, DA unit activity is also low during this final test phase, and thus it is possible that rather than PD networks showing enhanced NoGo learning per se, they could instead show enhanced expression of prior learning (because NoGo cells are just less inhibited during the tonic DA state in which responses are selected). To test for this in the model, you can set the network to the PD state (i.e. reduce the number of intact SNc units to 2) but then check off the box indicating \"da depletion during learning only\". When you run a batch of networks, it will train the models in the PD state (with specified number of intact snc units) but will then test the network in the intact state. Thus any differences in Go/NoGo activity during testing must result only from the effects of DA depletion during learning. You should see that in this case, there is a NoGo learning bias with impaired Go learning, relative to intact and medicated states. This shows that low levels of DA during learning impair approach and exaggerate avoidance even when DA levels are normalized during choice itself. On the other hand, you should see that this effect is not as strong as when DA depletion was applied both during learning and expression - thus showing that the normalized DA levels can actually facilitate the expression of prior Go learning to the extent that there was some sufficient minimal level of DA during learning. This simulation therefore predicts that medicating patients after learning and before test would increase the expression of Go relative to NoGo. Conversely, you can deplete DA levels only during testing and not during learning (with num_intact_snc_units set to 2, check the DA depletion during expression only box, and make sure to uncheck the other one). You should see that DA levels during test are also important in modulating the expression of Go and NoGo learning, with low DA facilitating the expression of NoGo and impairing the expression of Go relative to the intact state -- even though DA levels were identical to the intact state during learning itself, and hence corticostriatal NoGo synaptic weights should not differ. This shows that for the same level of corticostriatal input, DA depletion can exaggerate the excitiability of NoGo cells (as seen empirically in physiological studies), and hence prior learning. This observation may provide an explanation for the effects of DA depletion on effort-based decision making, whereby rats with striatal DA depletion (after learning) are less likely to make responses that have a high effort cost (e.g., low ratio of rewards to number of lever presses), which would have been associated with more negative prediction errors during learning. In the model, DA depletion during expression facilitates the expression of prior NoGo associations, and would therefore reduce motivated behavior. Indeed, multiple studies from John Salamone's lab (2008, 2009, 2010) indicate that this cost of effort is modulated by activity within the ventral striatal NoGo pathway. The combination of the above simulations show that DA levels are important both for learning and for expression of prior learning. == Interactions between pause duration, baseline DA levels & D2 receptor sensitivity == The observation that NoGo learning is actually enhanced in PD networks (and often in patients relative to healthy controls in the literature) may seem counterintuitive: DA levels are already low in PD and so don't drop as much during negative outcomes. There are multiple explanations for this in the model, which we explore next: (i) learning in the model is a mixture of both contrastive hebbian learning (difference between activation states from tonic to phasic) and pure hebbian learning (absolute activation states during the phasic reinforcement outcome); see appendix in Frank 2006 for detailed equations. Note that according to the pure hebbian component, the only thing that matters f,c ccc,xxcvor learning is the level of DA during the outcome (not the drop relative to tonic levels). Thus NoGo learning in PD networks is spared because DA levels are low during DA dips -- and in fact, the effective DA concentration can drop to lower levels in the already DA depleted state (see below). However, according to the contrastive hebbian mechanism, the drop of DA from tonic levels would be smaller, and hence the weight change due to this component would appear to be smaller. In actuality, this is not quite the case, as we shall see next. (ii) It is not the absolute change in DA levels that matters for inducing contrastive learning, but rather the downstream changes on activation levels. Note that D2 receptors have high affinity, which means that even with low tonic DA levels, DA can still bind to these receptors and thus have some inhibitory influence on NoGo neurons. When a DA dip occurs, DA levels go low enough to disinhibit NoGo cells, inducing a change (increase) in activation states and therefore contrastive hebbian learning. Importantly, in PD, D2 receptors become supersensitive (likely in compensation for chronically depleted DA; e.g. Seeman 2008). Thus, NoGo units with D2 receptors are inhibited by lower levels of tonic DA than would be the case for healthy individuals, allowing them to become more disinhibited as DA levels drop to zero. To see this in the model, change the D2 parameter in the control panel (which controls the strength of the inhibitory effect of DA onto NoGo units by modulating the D2 projection relative weight scale) from the default of .5 to 1. This increase in D2 receptor sensitivity leads to a supersensitive state, which we apply here only during learning to demonstrate that the effects are mediated by differential responsiveness to DA dips (the D2 strength is set back to 0.5 during expression in the code). You should see that when this state is combined with DA depletion, there is still quite a substantial NoGo learning bias relative to the intact state. The reason for this is that with strong D2 inhibitory effects, low DA levels tonically inhibit NoGo cells, which then become disinhibited during DA pauses. The resulting increase in activity is associated with both hebbian and contrastive hebbian learning. Critically, this improvement in NoGo learning with D2 receptor sensitivity only occurs with DA depletion -- if you simulate D2 supersensitivity in the intact state you should now see substantial NoGo learning deficits (see point (iii) for why this is the case). This accords well with effects of genes that increase D2 receptor affinity and with findings in Tourette's syndrome patients (who have D2 receptor supersensitivity without DA depletion, and show impaired NoGo learning that is then ameliorated with D2 antagonist drugs (Palminteri et al 2009). (iii) We showed above that the effect of DA pauses on learning depends on their duration: shorter pause durations are associated with reduced NoGo learning because it takes time for DA concentrations to drop to zero (due to dynamics of reuptake and timecourse of D2 receptor disinihibition; see Dreher et al 2010 for more biophysical simulations), and to disinhibit NoGo units with D2 receptors (in our model this is because of sluggish time constants of neuronal activation changes). Note though, that if tonic DA levels are already low due to PD, the duration of the pause necessary to disinhibit D2 receptors should be shorter, because DA levels are closer to the threshold at which D2 receptors would become unbound. To see this in the model, reduce the pause duration from the default of 30 cycles to 25 cycles. You should see that for these shorter pause durations, intact networks are quite impaired at NoGo learning (as shown earlier), but that PD networks exhibit spared NoGo learning. This is because PD nets are able to detect these smaller dips / shorter pause durations, whereas this shorter pause is insufficient for robust NoGo learning in the intact case. Based on these simulations, we can predict that PD patients will show greater NoGo learning from smaller negative prediction errors than healthy individuals. Note that this same effect explains why in intact networks, D2 receptor supersensitivity impaired NoGo learning: even for the standard (longer) pause duration, NoGo neurons continue to be inhibited for most of the duration of the pause (i.e., with D2 supersensitivity, DA levels have to drop to an even lower level to disinhibit NoGo units, such that longer pauses are required to reach this level). Thus individuals with stronger D2 receptor sensitivity should have intact learning from larger negative prediction errors (greater deviations from expectation). These effects of D2 manipulation in the otherwise intact striatum also accord with those seen in simulations of D2 receptor blockade which facilitates NoGo learning in rats (Wiecki et al, 2009) and humans (Palminteri et al, 2009). You can simulate D2 blockade by reducing the D2 projection strength from the default of .5 to .1 (with all else intact) and you will see an overall NoGo learning bias. This same mechanism may also be implicated in the observations that genetic modulations of striatal D2 receptor affinity are predictive of NoGo learning in healthy humans (Frank et al 2007,2009; Doll et al 2011). = PD Tremor, and Oscillations = With very low DA levels, you may also see some oscillations in STN and GP layers on some trials (these correspond to Parkinson's tremor; see Frank, 2006 for detailed discussion). You can look at these more carefully in the [[.T3Tab.CycleOutputData]] graph logs where activity levels of the various layers are recorded. The easiest way to see this is to set the number of intact snc units to 0 on the [[.PanelTab.MasterControl]] panel. This will eliminate all DA unit activity during response selection. Then increase the number of cycles that the network processes in each test trial so that you have more room to see oscillations -- change the \"test cycles\" value to 200. Next, open the LeabraTestEpoch program from the tree on the left. This will allow you to step through some test trials with the test cycles set to this new value and to observe the resulting activity levels. Press Init and TTrial on the LeabraTestEpoch panel a few times while watching the activity levels of the STN in the [[.T3Tab.CycleOutputData]] graph log. You might have to step through a few trials to see the oscillations, which should not (or only rarely) be seen in the intact state. In Frank 2006, it was shown that these oscillations are more apparent when the model is faced with response conflict. == Additional Notes and Relations to the Empirical Task == 1. The full ABCDEF structure of the empirical probabilistic selection task is not simulated here, but would produce the same results. We are interested in the extent to which the model learns Go vs NoGo to stimuli A and B. With the model, we can directly probe the learned Go and NoGo representations in response to each stimulus in the Striatum. This is not the case in humans (even in neuroimaging studies where it is impossible to disentangle Go vs NoGo activity, given that the cells are intermingled). Thus the behavioral paradigm requires a test phase to reveal whether individuals learned more positive associations to stimulus A or negative associations to stimulus B, by re-presenting these stimuli together with several more neutral stimuli C,D,E,F, collectively having 50% reward value. Go learning is inferred by choice of A over these neutral stimuli, wheras NoGo learning reflects avoidance of stimulus B relative to the neutral stimuli. In addition, using six stimuli in the behavioral experiment is helpful for preventing participants from explicitly keeping track of all the different stimulus-outcome associations in working memory, which encourages more implicit reinforcement integration (e.g. Collins & Frank, 2012). This issue is not present in this basic BG model, which does not have working memory or rule-based strategies, but see O'Reilly & Frank 2006 and Frank & Claus 2006 for BG interactions with prefrontal working memory. 2. In the model we present one stimulus at a time (A, B etc) and allow the model to choose a particular response (R1 or R2 which can be mapped on to approach and avoid). In the empirical task, participants are presented with two stimuli at a time and have to select one of them, with the actual stimulus locations counterabalanced across trials. The only reason we did not implement this in the model is that it is not equipped with a visual object recognition system that would be necessary for the model to 'know' that stimulus A presented on the left (corresponding to a particular set of input units) is the same stimulus A when presented on the right (another set of input units). Thus as far as the model is concerned, if A and B were presented together simultaneously, their collective input representation is identical to a single combined stimulus. Indeed, one can recast the current simulations such that the stimulus 'A' represented by four input units (depicted above) is really the same as 'AB' in which case the bottom two units represent A and the top two represent B. In that case, R1 would correspond to selecting A and R2 to selecting B, and the same Go/NoGo analysis described above applies identically. Similarly, stimulus B as originally defined above would correspond to simply another two stimuli (C and D) in which R1 corresponds to selecting C, and R2 D, and D is correct on 80% of trials. 3. Note that for the activation based recepive field analysis we measure activity during the action selection process, i.e. prior to a response being actually gated. This is because we are interested in the striatal Go/NoGo activations that affect future choice. Once a response is gated and selected (ie. fully active in motor cortex), lateral inhibition within cortex completely suppresses activation of the competing motor cortical response, such that its corresponding striatal (Go and NoGo) representations also vanish (as these depend on excitatory cortical input). Thus while Go activity for the selected response would be evident at the end of settling, NoGO activity for the alternative response would only be seen earlier during the selection process. We thus measure Go/NoGo activities early on during selection, and to make sure the measurement is not overly sensitive to the particular cycle of settling, we measure it twice -- once after 15 cycles and once after 25 cycles -- and then take the average. This time course gives enough time to process the incoming stimulus and leads to differential striatal activation while both responses are still being \"considered\" (activated) in cortex, and taking the measurement twice ensures we are more likely to capture both NoGo activities associated with rejecting a negative option and Go activities associated with choosing a positive one. Similar results hold if we just record Go and NoGo activities over the entire course of settling and then take the peak of each of these for the calculations. 4. As noted at the top of this document, the original model used kWTA (a mathematical approximation) to regulate inhibition. This simplification did not permit independent manipulation of the D2 inhibitory projections, because kWTA 'hijacks' the inhibitory currents in each unit. In earlier simulations the effects of DA were therefore always simultaneously affecting GO and NoGo cells -- more DA was associated with more Go excitation via D1 projection -- whereas here we can independently manipulate D2 receptor strength or blockade etc (by varying the strength of the inhibitory weight scale from DA units to NoGo cells) separately from general inhibitory effects within striatum (implemented with inhibitory interneurons that contribute to inhibitory currents in striatal cells but do not hijack them entirely) . "; html_text="

Probabilistic Go and NoGo Learning in the Basal Ganglia: Parkinson's and Medication Effects

This project replicates and extends the basic effects of simulated Parkinson's disease and medications on striatal Go-NoGo associations in response to \"positive\" and \"negative\" stimuli, as described in Frank, Seeberger, O'Reilly (2004), which used the Frank (2005) model to predict behavioral dissociations in medicated and non-medicated patients. Here the model includes the subthalamic nucleus, as described in Frank (2006) Neural Networks (the STN was omitted from the initial model for simplicity, but we thought it was important to replicate all the results with the more complete model, as is done here).

Also, unlike the original model, this particular version of the model uses a population of inhibitory interneurons to regulate striatal activity rather than the simplified k-winner take all (kWTA) approximation (the basic effects of DA manipulation apply also in the basic model). Including inhibitory interneurons is somewhat more realistic (GABAergic neurons regulate spiny neuron activity in striatum), but the main reason for this is to enable other manipulations of D2 receptor inhibitory effects independently from inhibitory regulation of striatal cells in general (both Go and NoGo) based on inhibitory neuron activity. (see technical note 4 at the bottom for more details). This allows us to explore effects of D2 receptor sensitivity, blockade etc (see also Wiecki et al 2009 and Santesso et al 2009 which used this same model for the same reasons).

The model is trained with four stimuli (A,B,C,D) each represented by a column of four input units. When stimulus A is presented, the model is rewarded for selecting R1 (\"approach\") on 80% of trials, and for selecting R2 (\"avoid\") on 20% of trials. The opposite contingencies are simulated for stimulus B, where R1 is incorrect on 80% of trials, while R2 is correct on these trials. Stimuli C and D are associated with 60% positive reinforcement for choosing R1 and R2 respectively. (See technical notes 1 and 2 at the bottom of this document for details on relating this choice of task representation to the empirical probabilistic selection task.) Rewards are associated with DA bursts that drive Go learning in the striatum to encode the stimulus-response-reinforcement conjunction. Non-rewarded trials are associated with DA dips that drive NoGo learning in the striatum so that it learns to suppress the non-rewarding response.

Networks are trained for 10 epochs (of 10 trials per stimulus) with this probabilistic structure before assessing relative Go and NoGo learning. After training, the LeabraTestEpoch presents all stimuli to the model one at a time, and assesses the Striatum internal valuation signals using Activation Based Receptive fields in the Striatum. These record the degree to which units become activated by particular input patterns. (See http://grey.colorado.edu/emergent/index.php/Activation_Based_Receptive_Field for more detailed info). In this case, we are interested in the degree to which Striatal Go unit activations are specific to stimulus-response conjunctions leading to positive feedback, and the NoGo unit activations for negative feedback. Thus we measure to Go unit activation for R1 when stimulus A is presented in the input (and similarly, Go units for R2 when stimulus B is presented). Conversely, we can also assess learned NoGo activity for bad (negative) responses (R2 for stimulus A and R1 for stimulus B)

The main findings are that (i) intact networks learn both Go to positive responses and NoGo to negative responses, (ii) simulated PD leads to impaired Go learning but intact NoGo learning, and (iii) simulated DA medications lead to the opposite pattern, as found in our empirical studies. (The current project focuses on the internal valuation Go/NoGo signals. See the next project on the BG Projects website for a demonstration that these associations translate to the empirically dissociations on choose-A and avoid-B choice accuracy). The activation based RF's are computed by the ActBasedRField_Go and ActBasedRField_NoGo Programs, which are called by LeabraTestEpoch. Normalized receptive fields are stored for each striatal unit in the ActRFData data table, which is a local object within the ActBasedRField Programs.

After the receptive fields for each unit are calculated, we then sum these over all Go units for the relevant stimuli and responses, so that we can calculate total Go activity for good responses and subtract total NoGo activity for good responses. This measure gives us the relative Go-NoGo learning achieved for positive responses, and is an index of positive reinforcement learning (one can also look at raw Go activity, but it is the relative Go-NoGo activation state that dictates the probability of gating a particular response, and hence is most relevant). Similarly, we can compute the total Go and NoGo activity for bad responses, and perform the same subtraction. In this case we expect relatively greater NoGo than Go activity after learning so the Go-NoGo difference should be negative, and is an index of learning from negative outcomes. All of these computations occur in the Calc_GoNoGo Program. The resulting statistics are reported in the Go_NoGo data table, as follows:

gn_pos computes relative Go-NoGo striatal activity for positive stimulus-response conjunctions (R1 for A and R2 for B). Networks should learn greater Go than NoGo representations for these positive associations, and if so the value should be positive.

gn_neg computes relative Go-NoGo striatal activity for stimulus-response conjunctions that had been predominantly associated with negative outcomes (R2 for A and R1 for B). Networks should learn greater NoGo representations for these negative associations, and if so the value should be negative. (Note that if plotting NoGo-Go associations the sign should be flipped (i.e.the value is positive such that more positive values indicate better learning for both gn_pos and gn_neg), as was done in Frank et al 2004 for comparison with behavioral accuracy results.) PD networks should be impaired at positive Go learning (less positive gn_pos) and medicated networks should be impaired at negative NoGo learning (less negative gn_neg). These effects should be evident both when comparing the groups in the different conditions, or simply testing whether the gn_pos is significantly greater than zero (in PD nets) and whether gn_neg is significantly less than zero (in medicated nets).

Running the networks

For intact network performance, make sure the number of intact SNc units is set to 4 (out of 4 units), the DA burst value is set to 1 (corresponding to maximal phasic burst firing rate) and the DA dip value is set to 0 (minimum phasic dip DA firing rate). These values are set in the MasterControl panel.

To run a set of networks on the task, Hit Init and Run on the bottom of the MasterControl. This will run a set of 25 networks, and store the data in the logfile you just created . (To speed things up, the display on the network and graphs has been turned off. If you want to observe activations while the network is running or monitor the visual graphs in the right frames, click on the appropriate tab that you want to view and check the Display! box on the top left.)

Because the data are noisy (probabilistic rewards, noisy unit activity, combined with random input weights which could by chance lead to particularly high Go or NoGo representations in the absence of feedback), we need to average across multiple networks with different sets of initial weights. This is done automatically at the end of running a batch of networks, with resulting mean and standard error of gn_pos and gn_neg reported in the Go_NoGo_Group data table and plotted in the associated bar graph on the right (click on it's tab).

(To analyze the data manually, from the Go_NoGo data table, click on DataProc->Group Mean SEM. In the dialog box that pops up, make sure the dest_data is set to New Data Table; this will create a new output data log under the AnalysisData_subgroup in the left frame, called Go_NoGo_Group. Also set all the gp_col fields to NULL, and click Ok. Now open the new analysis Go_NoGo_Group log. You should see the statistics (mean, standard error) for each variable that was monitored in the Go_NoGo table, and the bar graph on the tab on the right will also be updated.)

You should see the correct patterns of results across the runs, where on average gn_pos is positive and gn_neg is negative (which may not hold for every individual network, just like it doesn't hold for every individual participant in the task -- but you should see relatively more positive gn_pos than gn_neg in virtually every network, even if in some cases they are both positive or both negative). This indicates that striatal activations reflect prior learning that these particular stimulus-response conjunctions have positive or negative value.

To save the data for different conditions (and across across multiple networks) for subsequent analysis, save the data file. Open the data->AnalysisData subgroup tree in the Tree window (far left) and click on Go_NoGo to display the data table (which is where the relative Go NoGo activity values are reported, as described above, with each row representing a single network). Click on Data->Save Data. Make sure to name this logfile with some reference to the current dopamine settings, so that you can properly interpret the data (e.g., name this 'Intact.dat').

simulating PD and DA meds

To simulate PD, set the number of intact DA units to 1 in the MasterControl panel. This sets the number of SNc units that are connected to the Striatum to 2 (out of 4, simulating 50% DA depletion). This reduction in number of intact DA units leads to effectively reduced tonic and phasic DA levels in the Striatum.

Hit Init and Run. When it's done, analyze the group mean and standard error as above. You should see a NoGo learning bias across networks (gn_neg is more negative than gn_pos is positive), on average. If you want to save these data, before running the batch, save a new data file from the Go_NoGo object as described above, and give it a new name (e.g, with a PD tag). Note also that the effects of DA depletion are parametric - the more DA units that are eliminated from processing, the more NoGo learning bias is observed.

To simulate DA medication, set the number of intact DA units back to 4 units (to simulate the increase in DA synthesis due to levodopa) and simply check off the \"meds\" checkbox in the MasterControl panel. This sets the DA dip value so that the SNc dopamine units are prevented from completely dropping to zero activity during negative outcomes (DA dips) due to tonic medication stimulation of dopamine receptors (even if DA neurons themselves actually stop firing, see Frank 2005). (Specifically, DA levels show some residual activation, typically about 0.1 or 0.2 activation levels (subject to noise), during negative outcomes -- so DA levels still 'dip' relative to tonic values, but less so than in the intact case, where DA values can dip to 0, although this is dependent on sufficiently long DA neuron pause durations; see the \"Role of the DA pause\" below).

Hit Init and Run. When it's done, analyze the group mean and standard error as above. You should see that medicated networks are impaired at negative outcome learning (ie. they show less negative gn_neg values) compared to intact or PD networks, due to a reduced ability to learn NoGo, similar to the probabilstic reversal simulations (Frank, 2005; see also Cools, Altamirano, & D'Esposito, 2006).

Role of the DA Pause / D2 receptors

Some have argued that while phasic DA bursts encode positive predictions errors, DA dips may not be functionally effective, due to already low baseline firing rates of DA cells (e.g., Bayer & Glimcher, 2005). However, the smaller range of DA dips may be compensated by a counteracting asymmetry in the receptor sensitivity to dips versus bursts. In particular, because DA binds much more strongly to D2 than D1 class of receptors, high-affinity D2 receptors are very sensitive to low tonic DA levels, whereas large increases in DA are required to functionally stimulate D1 receptors (e.g., Goto & Grace, 2005; see more discussion in Cohen & Frank, 2009 and Maia & Frank, 2011). This tonic inhibition of D2 receptors means that these receptors are then very sensitive to the removal of tonic influences during DA dips, which drive NoGo learning in our model. Supporting this account, synaptic plasticity studies show that corticostriatal NoGo synapses are potentiated in the absence of D2 receptor stimulation, and this effect is exaggerated by DA depletion in a rodent model of Parkinson's disease, but reversed by D2 receptor agonist administration (Shen et al, 2008) -- precisely the same pattern of results seen as in human Parkinson's patients on and off DA medications on NoGo learning in the probabilistic task. Further, in healthy subjects, genetic factors controlling striatal D2 receptor function are strongly predictive of individual differences in probabilistic NoGo learning (Frank et al, 2007; Klein et al, 2007; Doll et al; 2011).

Recent evidence shows that the magnitude of negative prediction errors is correlated with the duration of DA pauses, rather than in the change in firing rates (Bayer, Lau & Glimcher, 2007). The BG model provides a plausible explanation for why this might be the case: in order to learn from DA dips there has to be sufficient time not just for DA neurons to stop firing, but for DA levels to be cleared from the synapse so that NoGo neurons can be disinhibited. Given a halflife of ~75 ms in dorsal striatum (Gonon, 1997), DA pauses for negative prediction errors lasting up to 350ms would give more than enough time for this signal to be functionally effective. Thus the longer the pause, the greater probability that a given D2 receptor will be unoccupied, and the stronger the learning signal.

To see this in the model, in the MasterControl panel, change the \"burst/pause duration\" from 30 cycles to 25 cycles. This reduces the number of processing cycles in the reinforcement phase during which simulated DA levels change to their phasic values (relative to tonic DA levels) which drive Go or NoGo learning. Make sure all other settings are default (intact): all 4 SNc units connected, no meds. If you re-run the intact network with this shorter burst/pause duration, you should see that the model shows NoGo learning deficits. This is because there has to be sufficient time for the SNc DA units to deactivate, and for the NoGo units to become disinhibited. The time course of this is dependent on the integration of membrane potentials and sluggishness of the neurons in the model, which is a crude approximation of the temporal dynamics associated with DA reuptake and NoGo unit disinhibition. Notably, although this setting also led to corresponding shortening of the duration of DA bursts, you should see that Go learning is preserved. This is because the Go units that participated in selecting the response were already activated and simply got an additional boost of activity from the phasic burst.

Effects of DA depletion on Learning versus Expression

Note that in all of the above simulations we reduced the number of DA units applied to both the learning phase and the testing phase in which we assess striatal Go/NoGo associations. (In contrast, the manipulations of DA pause duration and medication effects on DA dips only affect phasic DA during prediction errors - thus demonstrating a key role of DA in learning). However, in the model, the DA mechanism that facilitates learning is the same one that affects Go relative to NoGo activation states (i.e. when DA levels change they modulate activation states and this leads to activity dependent plasticity). This means that when we measure Go/NoGo activations in PD networks, DA unit activity is also low during this final test phase, and thus it is possible that rather than PD networks showing enhanced NoGo learning per se, they could instead show enhanced expression of prior learning (because NoGo cells are just less inhibited during the tonic DA state in which responses are selected). To test for this in the model, you can set the network to the PD state (i.e. reduce the number of intact SNc units to 2) but then check off the box indicating \"da depletion during learning only\". When you run a batch of networks, it will train the models in the PD state (with specified number of intact snc units) but will then test the network in the intact state. Thus any differences in Go/NoGo activity during testing must result only from the effects of DA depletion during learning. You should see that in this case, there is a NoGo learning bias with impaired Go learning, relative to intact and medicated states. This shows that low levels of DA during learning impair approach and exaggerate avoidance even when DA levels are normalized during choice itself. On the other hand, you should see that this effect is not as strong as when DA depletion was applied both during learning and expression - thus showing that the normalized DA levels can actually facilitate the expression of prior Go learning to the extent that there was some sufficient minimal level of DA during learning. This simulation therefore predicts that medicating patients after learning and before test would increase the expression of Go relative to NoGo.

Conversely, you can deplete DA levels only during testing and not during learning (with num_intact_snc_units set to 2, check the DA depletion during expression only box, and make sure to uncheck the other one). You should see that DA levels during test are also important in modulating the expression of Go and NoGo learning, with low DA facilitating the expression of NoGo and impairing the expression of Go relative to the intact state -- even though DA levels were identical to the intact state during learning itself, and hence corticostriatal NoGo synaptic weights should not differ. This shows that for the same level of corticostriatal input, DA depletion can exaggerate the excitiability of NoGo cells (as seen empirically in physiological studies), and hence prior learning. This observation may provide an explanation for the effects of DA depletion on effort-based decision making, whereby rats with striatal DA depletion (after learning) are less likely to make responses that have a high effort cost (e.g., low ratio of rewards to number of lever presses), which would have been associated with more negative prediction errors during learning. In the model, DA depletion during expression facilitates the expression of prior NoGo associations, and would therefore reduce motivated behavior. Indeed, multiple studies from John Salamone's lab (2008, 2009, 2010) indicate that this cost of effort is modulated by activity within the ventral striatal NoGo pathway.

The combination of the above simulations show that DA levels are important both for learning and for expression of prior learning.

Interactions between pause duration, baseline DA levels & D2 receptor sensitivity

The observation that NoGo learning is actually enhanced in PD networks (and often in patients relative to healthy controls in the literature) may seem counterintuitive: DA levels are already low in PD and so don't drop as much during negative outcomes. There are multiple explanations for this in the model, which we explore next:

(i) learning in the model is a mixture of both contrastive hebbian learning (difference between activation states from tonic to phasic) and pure hebbian learning (absolute activation states during the phasic reinforcement outcome); see appendix in Frank 2006 for detailed equations. Note that according to the pure hebbian component, the only thing that matters f,c ccc,xxcvor learning is the level of DA during the outcome (not the drop relative to tonic levels). Thus NoGo learning in PD networks is spared because DA levels are low during DA dips -- and in fact, the effective DA concentration can drop to lower levels in the already DA depleted state (see below). However, according to the contrastive hebbian mechanism, the drop of DA from tonic levels would be smaller, and hence the weight change due to this component would appear to be smaller. In actuality, this is not quite the case, as we shall see next. (ii) It is not the absolute change in DA levels that matters for inducing contrastive learning, but rather the downstream changes on activation levels. Note that D2 receptors have high affinity, which means that even with low tonic DA levels, DA can still bind to these receptors and thus have some inhibitory influence on NoGo neurons. When a DA dip occurs, DA levels go low enough to disinhibit NoGo cells, inducing a change (increase) in activation states and therefore contrastive hebbian learning. Importantly, in PD, D2 receptors become supersensitive (likely in compensation for chronically depleted DA; e.g. Seeman 2008). Thus, NoGo units with D2 receptors are inhibited by lower levels of tonic DA than would be the case for healthy individuals, allowing them to become more disinhibited as DA levels drop to zero.

To see this in the model, change the D2 parameter in the control panel (which controls the strength of the inhibitory effect of DA onto NoGo units by modulating the D2 projection relative weight scale) from the default of .5 to 1. This increase in D2 receptor sensitivity leads to a supersensitive state, which we apply here only during learning to demonstrate that the effects are mediated by differential responsiveness to DA dips (the D2 strength is set back to 0.5 during expression in the code). You should see that when this state is combined with DA depletion, there is still quite a substantial NoGo learning bias relative to the intact state. The reason for this is that with strong D2 inhibitory effects, low DA levels tonically inhibit NoGo cells, which then become disinhibited during DA pauses. The resulting increase in activity is associated with both hebbian and contrastive hebbian learning. Critically, this improvement in NoGo learning with D2 receptor sensitivity only occurs with DA depletion -- if you simulate D2 supersensitivity in the intact state you should now see substantial NoGo learning deficits (see point (iii) for why this is the case). This accords well with effects of genes that increase D2 receptor affinity and with findings in Tourette's syndrome patients (who have D2 receptor supersensitivity without DA depletion, and show impaired NoGo learning that is then ameliorated with D2 antagonist drugs (Palminteri et al 2009).

(iii) We showed above that the effect of DA pauses on learning depends on their duration: shorter pause durations are associated with reduced NoGo learning because it takes time for DA concentrations to drop to zero (due to dynamics of reuptake and timecourse of D2 receptor disinihibition; see Dreher et al 2010 for more biophysical simulations), and to disinhibit NoGo units with D2 receptors (in our model this is because of sluggish time constants of neuronal activation changes). Note though, that if tonic DA levels are already low due to PD, the duration of the pause necessary to disinhibit D2 receptors should be shorter, because DA levels are closer to the threshold at which D2 receptors would become unbound.

To see this in the model, reduce the pause duration from the default of 30 cycles to 25 cycles. You should see that for these shorter pause durations, intact networks are quite impaired at NoGo learning (as shown earlier), but that PD networks exhibit spared NoGo learning. This is because PD nets are able to detect these smaller dips / shorter pause durations, whereas this shorter pause is insufficient for robust NoGo learning in the intact case. Based on these simulations, we can predict that PD patients will show greater NoGo learning from smaller negative prediction errors than healthy individuals. Note that this same effect explains why in intact networks, D2 receptor supersensitivity impaired NoGo learning: even for the standard (longer) pause duration, NoGo neurons continue to be inhibited for most of the duration of the pause (i.e., with D2 supersensitivity, DA levels have to drop to an even lower level to disinhibit NoGo units, such that longer pauses are required to reach this level). Thus individuals with stronger D2 receptor sensitivity should have intact learning from larger negative prediction errors (greater deviations from expectation).

These effects of D2 manipulation in the otherwise intact striatum also accord with those seen in simulations of D2 receptor blockade which facilitates NoGo learning in rats (Wiecki et al, 2009) and humans (Palminteri et al, 2009). You can simulate D2 blockade by reducing the D2 projection strength from the default of .5 to .1 (with all else intact) and you will see an overall NoGo learning bias. This same mechanism may also be implicated in the observations that genetic modulations of striatal D2 receptor affinity are predictive of NoGo learning in healthy humans (Frank et al 2007,2009; Doll et al 2011).

PD Tremor, and Oscillations

With very low DA levels, you may also see some oscillations in STN and GP layers on some trials (these correspond to Parkinson's tremor; see Frank, 2006 for detailed discussion). You can look at these more carefully in the CycleOutputData graph logs where activity levels of the various layers are recorded. The easiest way to see this is to set the number of intact snc units to 0 on the MasterControl panel. This will eliminate all DA unit activity during response selection. Then increase the number of cycles that the network processes in each test trial so that you have more room to see oscillations -- change the \"test cycles\" value to 200. Next, open the LeabraTestEpoch program from the tree on the left. This will allow you to step through some test trials with the test cycles set to this new value and to observe the resulting activity levels. Press Init and TTrial on the LeabraTestEpoch panel a few times while watching the activity levels of the STN in the CycleOutputData graph log. You might have to step through a few trials to see the oscillations, which should not (or only rarely) be seen in the intact state. In Frank 2006, it was shown that these oscillations are more apparent when the model is faced with response conflict.

Additional Notes and Relations to the Empirical Task

1. The full ABCDEF structure of the empirical probabilistic selection task is not simulated here, but would produce the same results. We are interested in the extent to which the model learns Go vs NoGo to stimuli A and B. With the model, we can directly probe the learned Go and NoGo representations in response to each stimulus in the Striatum. This is not the case in humans (even in neuroimaging studies where it is impossible to disentangle Go vs NoGo activity, given that the cells are intermingled). Thus the behavioral paradigm requires a test phase to reveal whether individuals learned more positive associations to stimulus A or negative associations to stimulus B, by re-presenting these stimuli together with several more neutral stimuli C,D,E,F, collectively having 50% reward value. Go learning is inferred by choice of A over these neutral stimuli, wheras NoGo learning reflects avoidance of stimulus B relative to the neutral stimuli. In addition, using six stimuli in the behavioral experiment is helpful for preventing participants from explicitly keeping track of all the different stimulus-outcome associations in working memory, which encourages more implicit reinforcement integration (e.g. Collins & Frank, 2012). This issue is not present in this basic BG model, which does not have working memory or rule-based strategies, but see O'Reilly & Frank 2006 and Frank & Claus 2006 for BG interactions with prefrontal working memory.

2. In the model we present one stimulus at a time (A, B etc) and allow the model to choose a particular response (R1 or R2 which can be mapped on to approach and avoid). In the empirical task, participants are presented with two stimuli at a time and have to select one of them, with the actual stimulus locations counterabalanced across trials. The only reason we did not implement this in the model is that it is not equipped with a visual object recognition system that would be necessary for the model to 'know' that stimulus A presented on the left (corresponding to a particular set of input units) is the same stimulus A when presented on the right (another set of input units). Thus as far as the model is concerned, if A and B were presented together simultaneously, their collective input representation is identical to a single combined stimulus. Indeed, one can recast the current simulations such that the stimulus 'A' represented by four input units (depicted above) is really the same as 'AB' in which case the bottom two units represent A and the top two represent B. In that case, R1 would correspond to selecting A and R2 to selecting B, and the same Go/NoGo analysis described above applies identically. Similarly, stimulus B as originally defined above would correspond to simply another two stimuli (C and D) in which R1 corresponds to selecting C, and R2 D, and D is correct on 80% of trials.

3. Note that for the activation based recepive field analysis we measure activity during the action selection process, i.e. prior to a response being actually gated. This is because we are interested in the striatal Go/NoGo activations that affect future choice. Once a response is gated and selected (ie. fully active in motor cortex), lateral inhibition within cortex completely suppresses activation of the competing motor cortical response, such that its corresponding striatal (Go and NoGo) representations also vanish (as these depend on excitatory cortical input). Thus while Go activity for the selected response would be evident at the end of settling, NoGO activity for the alternative response would only be seen earlier during the selection process. We thus measure Go/NoGo activities early on during selection, and to make sure the measurement is not overly sensitive to the particular cycle of settling, we measure it twice -- once after 15 cycles and once after 25 cycles -- and then take the average. This time course gives enough time to process the incoming stimulus and leads to differential striatal activation while both responses are still being \"considered\" (activated) in cortex, and taking the measurement twice ensures we are more likely to capture both NoGo activities associated with rejecting a negative option and Go activities associated with choosing a positive one. Similar results hold if we just record Go and NoGo activities over the entire course of settling and then take the peak of each of these for the calculations.

4. As noted at the top of this document, the original model used kWTA (a mathematical approximation) to regulate inhibition. This simplification did not permit independent manipulation of the D2 inhibitory projections, because kWTA 'hijacks' the inhibitory currents in each unit. In earlier simulations the effects of DA were therefore always simultaneously affecting GO and NoGo cells -- more DA was associated with more Go excitation via D1 projection -- whereas here we can independently manipulate D2 receptor strength or blockade etc (by varying the strength of the inhibitory weight scale from DA units to NoGo cells) separately from general inhibitory effects within striatum (implemented with inhibitory interneurons that contribute to inhibitory currents in striatal cells but do not hijack them entirely) .

"; }; }; wizards { name="wizards"; el_typ=LeabraWizard; el_def=0; LeabraWizard @["LeabraWizard_2"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItemBase; el_def=0; UserDataItem @["NO_CLIP"] { name="NO_CLIP"; value 1 0=1; val_type_fixed=0; }; }; name="LeabraWizard_2"; auto_open=0; }; }; ctrl_panels { name="ctrl_panels"; el_typ=ControlPanel; el_def=0; ControlPanel @["MasterControl"] { name="MasterControl"; auto_edit=1; running_updt=0; desc=; mbrs { name="mbrs"; el_typ=EditMbrItem; el_def=0; EditMbrItem @[0] { label="num_intact_snc_units_"; desc=" integer value -- this is the current actual value of the variable at all times for global variables, and is used as an initialization value for local variables (they start with this value, but what you see here is NOT their current value as the program runs)"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["num_intact_snc_units"]$$; mbr=ProgVar::int_val; is_numeric=1; is_single=1; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1; }; }; EditMbrItem @[1] { label="meds_"; desc=" boolean value -- this is the current actual value of the variable at all times for global variables, and is used as an initialization value for local variables (they start with this value, but what you see here is NOT their current value as the program runs)"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["meds"]$$; mbr=ProgVar::bool_val; is_numeric=0; is_single=1; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1000000014901161; }; }; EditMbrItem @[2] { label="pause"; desc=" integer value -- this is the current actual value of the variable at all times for global variables, and is used as an initialization value for local variables (they start with this value, but what you see here is NOT their current value as the program runs)"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].vars["Mypause"]$$; mbr=ProgVar::int_val; is_numeric=1; is_single=1; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1; }; }; EditMbrItem @[3] { label="D2_strength"; desc=" real value -- this is the current actual value of the variable at all times for global variables, and is used as an initialization value for local variables (they start with this value, but what you see here is NOT their current value as the program runs)"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["D2abs"]$$; mbr=ProgVar::real_val; is_numeric=1; is_single=1; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1; }; }; EditMbrItem @[4] { label="da_depletion_during_learning_only_"; desc="da depletion during learning only?"; cust_desc=1; base=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["learning"]$$; mbr=ProgVar::bool_val; is_numeric=0; is_single=1; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1; }; }; EditMbrItem @[5] { label="da_depletion_during_expression_only_"; desc="da manip during expression only?"; cust_desc=1; base=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["PD_expression"]$$; mbr=ProgVar::bool_val; is_numeric=0; is_single=1; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1; }; }; EditMbrItem @[6] { label="test_cycles"; desc="batch counter"; cust_desc=1; base=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["tstcycle"]$$; mbr=ProgVar::int_val; is_numeric=1; is_single=1; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1; }; }; }; mths { name="mths"; el_typ=EditMthItem; el_def=0; group_type=GT_BUTTONS; EditMthItem @[0] { label="Init"; desc=" set the program state back to the beginning"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"]$$; mth=Program::Init; }; EditMthItem @[1] { label="Run"; desc=" run the program -- if not yet Init, will run Init first"; cust_desc=0; base=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"]$; mth=Program::Run_Gui; }; EditMthItem @[2] { label="Step"; desc=" step the program at the level of the given program -- if NULL then step_prog default value will be used"; cust_desc=0; base=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"]$; mth=Program::Step_Gui; }; EditMthItem @[3] { label="Stop"; desc=" stop the current program at its next natural stopping point (i.e., cleanly stopping when appropriate chunks of computation have completed)"; cust_desc=0; base=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"]$; mth=Program::Stop; }; }; }; ControlPanel @["UnitInhib"] { name="UnitInhib"; auto_edit=0; running_updt=0; desc=; mbrs { name="mbrs"; el_typ=EditMbrItem; el_def=0; EditMbrItem @[0] { label="excite_dt"; desc=" time constants (rate of updating): membrane potential (vm) and net input (net)
integ: [Default: 1;0.5;0.001;0.0005] overall rate constant for numerical integration -- affected by the timescale of the parameters and numerical stability issues -- typically 1 cycle = 1 ms, and if using ms normed units, this should be 1, otherwise 0.001 (1 ms in seconds) or possibly .5 or .0005 if there are stability issues
vm: [Default: 0.1:0.357] membrane potential rate constant -- reflects the capacitance of the neuron in principle -- biological default for AeEx spiking model C = 281 pF = 2.81 normalized = .356 rate constant
net: [Default: 0.7] net input time constant -- how fast to update net input (damps oscillations) -- generally reflects time constants associated with synaptic channels which are not modeled in the most abstract rate code models (set to 1 for detailed spiking models with more realistic synaptic currents)
midpoint: use the midpoint method in computing the vm value -- better avoids oscillations and allows a larger dt.vm parameter to be used -- this is critical to use with SPIKE mode
d vm max: [Default: 100] maximum change in vm at any timestep (limits blowup) -- this is a crude but effective safety valve for numerical integration problems (no longer necessary in gelin-based compuation)
vm eq cyc: [Default: 0] number of cycles to compute the vm as equilibirium potential given current inputs: set to 1 to quickly activate input layers; set to 100 to always use this computation
vm eq dt: [Default: 1] time constant for integrating the vm_eq values: how quickly to move toward the current eq value from previous vm value
integ time: 1/integ rate constant = time constant for each cycle of updating for numerical integration
vm time: 1/vm rate constant = time in cycles for vm to reach 1/e of asymptotic value
net time: 1/net rate constant = time in cycles for net to reach 1/e of asymptotic value"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"]$$; mbr=LeabraUnitSpec::dt; is_numeric=0; is_single=0; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1000000014901161; }; }; EditMbrItem @[1] { label="inhib_dt"; desc=" time constants (rate of updating): membrane potential (vm) and net input (net)
integ: [Default: 1;0.5;0.001;0.0005] overall rate constant for numerical integration -- affected by the timescale of the parameters and numerical stability issues -- typically 1 cycle = 1 ms, and if using ms normed units, this should be 1, otherwise 0.001 (1 ms in seconds) or possibly .5 or .0005 if there are stability issues
vm: [Default: 0.1:0.357] membrane potential rate constant -- reflects the capacitance of the neuron in principle -- biological default for AeEx spiking model C = 281 pF = 2.81 normalized = .356 rate constant
net: [Default: 0.7] net input time constant -- how fast to update net input (damps oscillations) -- generally reflects time constants associated with synaptic channels which are not modeled in the most abstract rate code models (set to 1 for detailed spiking models with more realistic synaptic currents)
midpoint: use the midpoint method in computing the vm value -- better avoids oscillations and allows a larger dt.vm parameter to be used -- this is critical to use with SPIKE mode
d vm max: [Default: 100] maximum change in vm at any timestep (limits blowup) -- this is a crude but effective safety valve for numerical integration problems (no longer necessary in gelin-based compuation)
vm eq cyc: [Default: 0] number of cycles to compute the vm as equilibirium potential given current inputs: set to 1 to quickly activate input layers; set to 100 to always use this computation
vm eq dt: [Default: 1] time constant for integrating the vm_eq values: how quickly to move toward the current eq value from previous vm value
integ time: 1/integ rate constant = time constant for each cycle of updating for numerical integration
vm time: 1/vm rate constant = time in cycles for vm to reach 1/e of asymptotic value
net time: 1/net rate constant = time in cycles for net to reach 1/e of asymptotic value"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["InhibUnits"]$$; mbr=LeabraUnitSpec::dt; is_numeric=0; is_single=0; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1000000014901161; }; }; EditMbrItem @[2] { label="excite_g_bar"; desc=" [Defaults: 1, .1, 1, .1, .5] maximal conductances for channels
e: Excitatory (glutamatergic synaptic sodium (Na) channel)
l: Constant leak (potassium, K+) channel
i: inhibitory
h: hysteresis (Ca)
a: accomodation (k)"; cust_desc=0; base=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"]$; mbr=LeabraUnitSpec::g_bar; is_numeric=0; is_single=0; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1000000014901161; }; }; EditMbrItem @[3] { label="ff_inhib_wt_scale"; desc=" scale effective weight values to control the overall strength of a projection -- relative shifts balance among different projections, while absolute is a direct multipler
abs: [Default: 1] absolute scaling (not subject to normalization: directly multiplies weight values)
rel: [Default: 1] relative scaling that shifts balance between different projections (subject to normalization across all other projections into unit)
sem extra: [Default: 2] standard-error-of-the-mean (SEM) extra value to add to the average expected number of active connections to receive, for purposes of computing scaling factors with partial connectivity -- for 25% layer activity, binomial SEM = sqrt(p(1-p)) = .43, so 3x = 1.3 so 2 is a reasonable default, but can use different value to make scaling work better"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["FBtoInhib"].children["FFtoInhib"]$$; mbr=LeabraConSpec::wt_scale; is_numeric=0; is_single=0; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1000000014901161; }; }; EditMbrItem @[4] { label="to_inhib_rnd"; desc=" Weight randomization specification. Note that NONE means no value at all, not the mean, and should be used if some other source is setting the weights, e.g., from a projectionspec or loading from a file etc
type: type of random variable to generate
* UNIFORM: uniform with var = range on either side of the mean
* BINOMIAL: binomial with var = p, par = n
* POISSON: poisson with lambda = var
* GAMMA: gamma with var and par = stages
* GAUSSIAN: normal with var
* NONE: just the mean
mean: mean of random distribution
var: 'varibility' parameter for the random numbers (gauss = standard deviation, not variance; uniform = half-range)
par: extra parameter for distribution (depends on each one)"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["FBtoInhib"]$$; mbr=ConSpec::rnd; is_numeric=0; is_single=0; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1000000014901161; }; }; EditMbrItem @[5] { label="fm_inhib_rnd"; desc=" Weight randomization specification. Note that NONE means no value at all, not the mean, and should be used if some other source is setting the weights, e.g., from a projectionspec or loading from a file etc
type: type of random variable to generate
* UNIFORM: uniform with var = range on either side of the mean
* BINOMIAL: binomial with var = p, par = n
* POISSON: poisson with lambda = var
* GAMMA: gamma with var and par = stages
* GAUSSIAN: normal with var
* NONE: just the mean
mean: mean of random distribution
var: 'varibility' parameter for the random numbers (gauss = standard deviation, not variance; uniform = half-range)
par: extra parameter for distribution (depends on each one)"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["InhibCons"]$$; mbr=ConSpec::rnd; is_numeric=0; is_single=0; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1000000014901161; }; }; EditMbrItem @[6] { label="layers_adapt_i"; desc=" adapt the inhibition: either i_kwta_pt point based on diffs between actual and target k level (for avg-based), or g_bar.i for unit-inhib
type: what to adapt, or none for nothing
* NONE: don't adapt anything
* KWTA PT: adapt kwta point (i_kwta_pt) based on running-average layer activation as compared to target value
* G BAR I: adapt g_bar.i for unit inhibition values based on layer activation at any point in time
* G BAR IL: adapt g_bar.i and g_bar.l for unit inhibition & leak values based on layer activation at any point in time
tol: [Default: 0.02] tolerance around target avg act before changing parameter
p dt: [Default: 0.1] time constant for changing the parameter (i_kwta_pt or g_bar.i)
mx d: [Default: 0.9] maximum deviation (proportion) from initial parameter setting allowed
l: proportion of difference from target activation to allocate to the leak in G_BAR_IL mode
a dt: [Default: 0.005] time constant for integrating average average activation, which is basis for adapting i_kwta_pt"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["LayerSpec_0"]$$; mbr=LeabraLayerSpec::adapt_i; is_numeric=0; is_single=0; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1000000014901161; }; }; EditMbrItem @[7] { label="IntactNet_cycle_max"; desc="[Default: 60] maximum number of cycles to settle for: note for CtLeabra_X/CAL this is overridden by phase specific settings by the settle process"; cust_desc=0; base=.projects["BG_PS_inhib_e7"].networks["BGNet"]$$; mbr=LeabraNetwork::cycle_max; is_numeric=1; is_single=1; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1000000014901161; }; }; EditMbrItem @[8] { label="IntactNet_min_cycles"; desc="[Default: 15:35] minimum number of cycles to settle for"; cust_desc=0; base=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; mbr=LeabraNetwork::min_cycles; is_numeric=1; is_single=1; param_search { srch=NO; min_val=0; max_val=1; next_val=0; incr=0.1000000014901161; }; }; }; mths { name="mths"; el_typ=EditMthItem; el_def=0; group_type=GT_BUTTONS; }; }; ClusterRun @["ClusterRun"] { name="ClusterRun"; auto_edit=1; running_updt=0; desc=; mbrs { name="mbrs"; el_typ=EditMbrItem; el_def=0; }; mths { name="mths"; el_typ=EditMthItem; el_def=0; group_type=GT_BUTTONS; }; jobs_running { name="jobs_running"; desc=; data { name="data"; el_typ=String_Data; el_def=0; String_Data @["tag"] { name="tag"; desc="unique tag id for this job -- all files etc are named according to this tag"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["notes"] { name="notes"; desc="notes for the job -- describe any specific information about the model configuration etc -- can use this for searching and sorting results"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["params"] { name="params"; desc="emergent parameters based on currently selected items in the ClusterRun"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["status"] { name="status"; desc="status of job: REQUESTED, CANCELLED, SUBMITTED, QUEUED, RUNNING, DONE, KILLED"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["status_info"] { name="status_info"; desc="more detailed information about status"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["submit_time"] { name="submit_time"; desc="when was the job submitted (tracks time from emergent client submission)"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["start_time"] { name="start_time"; desc="when did the job actually start running"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["end_time"] { name="end_time"; desc="when did the job finish running"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["job_no"] { name="job_no"; desc="job number on cluster -- assigned once the job is submitted to the cluster"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["job_out"] { name="job_out"; desc="job output information -- contains (top of) the job standard output and standard error output as the job is running (truncated to top 2048 characters if longer than that) -- full information available in job_out_file"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["job_out_file"] { name="job_out_file"; desc="job output file -- file name containing full job output information -- file name should be tag.out"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["dat_files"] { name="dat_files"; desc="list of data table output (results) files generated by model (space separated) -- these files have the tag in their name, and end in .dat"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["other_files"] { name="other_files"; desc="list of other output (results) files generated by model (space separated) -- these files have the tag in their name but do not end in .dat"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["command_id"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="command_id"; desc="id for this command, assigned by the search algorithm in an algorithm-specific manner (optional)"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["command"] { name="command"; desc="emergent command line, up to point of parameters"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["repo_url"] { name="repo_url"; desc="name of repository to run job on"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["cluster"] { name="cluster"; desc="name of cluster to run job on"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["queue"] { name="queue"; desc="if specified, indicate a particular queue on the computing resource"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["run_time"] { name="run_time"; desc="how long will the jobs take to run -- syntax is number followed by unit indicator -- m=minutes, h=hours, d=days -- e.g., 30m, 12h, or 2d -- typically the job will be killed if it exceeds this amount of time, so be sure to not underestimate"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["ram_gb"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="ram_gb"; desc="how many gigabytes of ram is required? 0 means do not specify this parameter for the job submission -- for large memory jobs, it can be important to specify this to ensure proper allocation of resources"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["n_threads"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="n_threads"; desc="number of parallel threads to use for running"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["mpi_nodes"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="mpi_nodes"; desc="number of nodes to use for mpi run -- 0 or -1 means not to use mpi"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["pb_batches"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="pb_batches"; desc="if > 0, use parallel batch mode with this number of batches"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["pb_nodes"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="pb_nodes"; desc="if doing parallel batch mode, and cluster has by_node policy, then this is the number of nodes to allocate to the overall job"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["submit_svn"] { name="submit_svn"; desc="svn revision for the original job submission"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["submit_job"] { name="submit_job"; desc="index of job number within a given submission -- equal to the row number of the original set of jobs submitted in submit_svn jobs"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; }; data_flags=AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name=; [0] }; }; jobs_done { name="jobs_done"; desc=; data { name="data"; el_typ=String_Data; el_def=0; String_Data @["tag"] { name="tag"; desc="unique tag id for this job -- all files etc are named according to this tag"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["notes"] { name="notes"; desc="notes for the job -- describe any specific information about the model configuration etc -- can use this for searching and sorting results"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["params"] { name="params"; desc="emergent parameters based on currently selected items in the ClusterRun"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["status"] { name="status"; desc="status of job: REQUESTED, CANCELLED, SUBMITTED, QUEUED, RUNNING, DONE, KILLED"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["status_info"] { name="status_info"; desc="more detailed information about status"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["submit_time"] { name="submit_time"; desc="when was the job submitted (tracks time from emergent client submission)"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["start_time"] { name="start_time"; desc="when did the job actually start running"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["end_time"] { name="end_time"; desc="when did the job finish running"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["job_no"] { name="job_no"; desc="job number on cluster -- assigned once the job is submitted to the cluster"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["job_out"] { name="job_out"; desc="job output information -- contains (top of) the job standard output and standard error output as the job is running (truncated to top 2048 characters if longer than that) -- full information available in job_out_file"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["job_out_file"] { name="job_out_file"; desc="job output file -- file name containing full job output information -- file name should be tag.out"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["dat_files"] { name="dat_files"; desc="list of data table output (results) files generated by model (space separated) -- these files have the tag in their name, and end in .dat"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["other_files"] { name="other_files"; desc="list of other output (results) files generated by model (space separated) -- these files have the tag in their name but do not end in .dat"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["command_id"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="command_id"; desc="id for this command, assigned by the search algorithm in an algorithm-specific manner (optional)"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["command"] { name="command"; desc="emergent command line, up to point of parameters"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["repo_url"] { name="repo_url"; desc="name of repository to run job on"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["cluster"] { name="cluster"; desc="name of cluster to run job on"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["queue"] { name="queue"; desc="if specified, indicate a particular queue on the computing resource"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["run_time"] { name="run_time"; desc="how long will the jobs take to run -- syntax is number followed by unit indicator -- m=minutes, h=hours, d=days -- e.g., 30m, 12h, or 2d -- typically the job will be killed if it exceeds this amount of time, so be sure to not underestimate"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["ram_gb"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="ram_gb"; desc="how many gigabytes of ram is required? 0 means do not specify this parameter for the job submission -- for large memory jobs, it can be important to specify this to ensure proper allocation of resources"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["n_threads"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="n_threads"; desc="number of parallel threads to use for running"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["mpi_nodes"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="mpi_nodes"; desc="number of nodes to use for mpi run -- 0 or -1 means not to use mpi"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["pb_batches"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="pb_batches"; desc="if > 0, use parallel batch mode with this number of batches"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["pb_nodes"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="pb_nodes"; desc="if doing parallel batch mode, and cluster has by_node policy, then this is the number of nodes to allocate to the overall job"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["submit_svn"] { name="submit_svn"; desc="svn revision for the original job submission"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["submit_job"] { name="submit_job"; desc="index of job number within a given submission -- equal to the row number of the original set of jobs submitted in submit_svn jobs"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; }; data_flags=AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name=; [0] }; }; jobs_archive { name="jobs_archive"; desc=; data { name="data"; el_typ=String_Data; el_def=0; String_Data @["tag"] { name="tag"; desc="unique tag id for this job -- all files etc are named according to this tag"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["notes"] { name="notes"; desc="notes for the job -- describe any specific information about the model configuration etc -- can use this for searching and sorting results"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["params"] { name="params"; desc="emergent parameters based on currently selected items in the ClusterRun"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["status"] { name="status"; desc="status of job: REQUESTED, CANCELLED, SUBMITTED, QUEUED, RUNNING, DONE, KILLED"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["status_info"] { name="status_info"; desc="more detailed information about status"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["submit_time"] { name="submit_time"; desc="when was the job submitted (tracks time from emergent client submission)"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["start_time"] { name="start_time"; desc="when did the job actually start running"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["end_time"] { name="end_time"; desc="when did the job finish running"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["job_no"] { name="job_no"; desc="job number on cluster -- assigned once the job is submitted to the cluster"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["job_out"] { name="job_out"; desc="job output information -- contains (top of) the job standard output and standard error output as the job is running (truncated to top 2048 characters if longer than that) -- full information available in job_out_file"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["job_out_file"] { name="job_out_file"; desc="job output file -- file name containing full job output information -- file name should be tag.out"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["dat_files"] { name="dat_files"; desc="list of data table output (results) files generated by model (space separated) -- these files have the tag in their name, and end in .dat"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["other_files"] { name="other_files"; desc="list of other output (results) files generated by model (space separated) -- these files have the tag in their name but do not end in .dat"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["command_id"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="command_id"; desc="id for this command, assigned by the search algorithm in an algorithm-specific manner (optional)"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["command"] { name="command"; desc="emergent command line, up to point of parameters"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["repo_url"] { name="repo_url"; desc="name of repository to run job on"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["cluster"] { name="cluster"; desc="name of cluster to run job on"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["queue"] { name="queue"; desc="if specified, indicate a particular queue on the computing resource"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["run_time"] { name="run_time"; desc="how long will the jobs take to run -- syntax is number followed by unit indicator -- m=minutes, h=hours, d=days -- e.g., 30m, 12h, or 2d -- typically the job will be killed if it exceeds this amount of time, so be sure to not underestimate"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["ram_gb"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="ram_gb"; desc="how many gigabytes of ram is required? 0 means do not specify this parameter for the job submission -- for large memory jobs, it can be important to specify this to ensure proper allocation of resources"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["n_threads"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="n_threads"; desc="number of parallel threads to use for running"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["mpi_nodes"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="mpi_nodes"; desc="number of nodes to use for mpi run -- 0 or -1 means not to use mpi"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["pb_batches"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="pb_batches"; desc="if > 0, use parallel batch mode with this number of batches"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; int_Data @["pb_nodes"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="pb_nodes"; desc="if doing parallel batch mode, and cluster has by_node policy, then this is the number of nodes to allocate to the overall job"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["submit_svn"] { name="submit_svn"; desc="svn revision for the original job submission"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["submit_job"] { name="submit_job"; desc="index of job number within a given submission -- equal to the row number of the original set of jobs submitted in submit_svn jobs"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; }; data_flags=AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name=; [0] }; }; file_list { name="file_list"; desc=; data { name="data"; el_typ=String_Data; el_def=0; String_Data @["file_name"] { name="file_name"; desc="name of file -- does not include any path information"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["tag"] { name="tag"; desc="job tag associated with this file"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["size"] { name="size"; desc="size of file -- with typical suffixes (K = kilobytes, M = megabytes, G = gigabytes)"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["kind"] { name="kind"; desc="type of file"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["date_modified"] { name="date_modified"; desc="timestamp for when the file was last modified"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["date_created"] { name="date_created"; desc="timestamp for when the file was first created"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["svn_file_path"] { name="svn_file_path"; desc="path to file in SVN repository, relative to root of svn_repo repository"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["proj_file_path"] { name="proj_file_path"; desc="path to file relative to the parent project directory -- e.g., results/filename.dat"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["file_path"] { name="file_path"; desc="full path to file on local file system, including all parent directories and name of file -- takes you directly to the file"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; }; data_flags=AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name=; [0] }; }; cluster_info { name="cluster_info"; desc=; data { name="data"; el_typ=String_Data; el_def=0; String_Data @["queue"] { name="queue"; desc="queue that this info relates to"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["job_no"] { name="job_no"; desc="job number or total number of actve jobs"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["user"] { name="user"; desc="user name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["state"] { name="state"; desc="current scheduler state -- or description of global state info"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["procs"] { name="procs"; desc="number of processors for this job or for global state info"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; String_Data @["start_time"] { name="start_time"; desc="timestamp for when the job was submitted or started running"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name=; [0] }; width=0; }; }; data_flags=AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name=; [0] }; }; search_algos { name="search_algos"; el_typ=ParamSearchAlgo; el_def=0; }; cur_search_algo=NULL; last_submit_time=; notes=; extra_files=; svn_repo=; repo_url=; cluster=; queue=; run_time=; ram_gb=0; n_threads=1; use_mpi=0; mpi_nodes=10; parallel_batch=0; pb_batches=10; pb_nodes=0; nowin_x=0; }; }; data { name="data"; el_typ=DataTable; el_def=0; save_tables=1; DataTable_Group @.gp["InputData"] { name="InputData"; el_typ=DataTable; el_def=0; save_tables=1; DataTable @["RF_Env"] { name="RF_Env"; desc=; data { name="data"; el_typ=String_Data; el_def=0; String_Data @["Name"] { name="Name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [36] "Striatum.un[0]";"Striatum.un[1]";"Striatum.un[2]";"Striatum.un[3]";"Striatum.un[4]";"Striatum.un[5]";"Striatum.un[6]";"Striatum.un[7]";"Striatum.un[8]";"Striatum.un[9]"; "Striatum.un[10]";"Striatum.un[11]";"Striatum.un[12]";"Striatum.un[13]";"Striatum.un[14]";"Striatum.un[15]";"Striatum.un[16]";"Striatum.un[17]";"Striatum.un[18]";"Striatum.un[19]"; "Striatum.un[20]";"Striatum.un[21]";"Striatum.un[22]";"Striatum.un[23]";"Striatum.un[24]";"Striatum.un[25]";"Striatum.un[26]";"Striatum.un[27]";"Striatum.un[28]";"Striatum.un[29]"; "Striatum.un[30]";"Striatum.un[31]";"Striatum.un[32]";"Striatum.un[33]";"Striatum.un[34]";"Striatum.un[35]"; }; }; float_Data @["Input"] { name="Input"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 5;5; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [5 5 36] 0.0020658399;0.027912499;0.00137255;1.8098601e-05;0;0.0020658399;0.027912499;0.00137255;1.8098601e-05;0; 0.0020658399;0.027912499;0.00137255;1.8098601e-05;0;0.0020658399;0.027912499;0.00137255;1.8098601e-05;0; 0;0;0;0;0;0.0310445;0.15307499;7.62914e-07;0.0155913;0; 0.0310445;0.15307499;7.62914e-07;0.0155913;0;0.0310445;0.15307499;7.62914e-07;0.0155913;0; 0.0310445;0.15307499;7.62914e-07;0.0155913;0;0;0;0;0;0; 0.30409101;0.136353;0.032774601;2.4158101e-06;0;0.30409101;0.136353;0.032774601;2.4158101e-06;0; 0.30409101;0.136353;0.032774601;2.4158101e-06;0;0.30409101;0.136353;0.032774601;2.4158101e-06;0; 0;0;0;0;0;1.45115e-10;1.9908599e-08;1.1082e-08;0.0716919;0; 1.45115e-10;1.9908599e-08;1.1082e-08;0.0716919;0;1.45115e-10;1.9908599e-08;1.1082e-08;0.0716919;0; 1.45115e-10;1.9908599e-08;1.1082e-08;0.0716919;0;0;0;0;0;0; 4.7102e-07;8.2514397e-08;5.07108e-09;4.03753e-10;0;4.7102e-07;8.2514397e-08;5.07108e-09;4.03753e-10;0; 4.7102e-07;8.2514397e-08;5.07108e-09;4.03753e-10;0;4.7102e-07;8.2514397e-08;5.07108e-09;4.03753e-10;0; 0;0;0;0;0;4.46938e-07;8.2186498e-06;3.2926201e-10;8.1646504e-05;0; 4.46938e-07;8.2186498e-06;3.2926201e-10;8.1646504e-05;0;4.46938e-07;8.2186498e-06;3.2926201e-10;8.1646504e-05;0; 4.46938e-07;8.2186498e-06;3.2926201e-10;8.1646504e-05;0;0;0;0;0;0; 0.065097399;0.23739199;0;0.026730699;0;0.065097399;0.23739199;0;0.026730699;0; 0.065097399;0.23739199;0;0.026730699;0;0.065097399;0.23739199;0;0.026730699;0; 0;0;0;0;0;0.297351;0.0160699;0.080513798;0.00239517;0; 0.297351;0.0160699;0.080513798;0.00239517;0;0.297351;0.0160699;0.080513798;0.00239517;0; 0.297351;0.0160699;0.080513798;0.00239517;0;0;0;0;0;0; 0.119379;0.0379465;0.0025241601;4.24338e-07;0;0.119379;0.0379465;0.0025241601;4.24338e-07;0; 0.119379;0.0379465;0.0025241601;4.24338e-07;0;0.119379;0.0379465;0.0025241601;4.24338e-07;0; 0;0;0;0;0;0.00051168102;1.7507499e-08;0.42471701;0.00045545201;0; 0.00051168102;1.7507499e-08;0.42471701;0.00045545201;0;0.00051168102;1.7507499e-08;0.42471701;0.00045545201;0; 0.00051168102;1.7507499e-08;0.42471701;0.00045545201;0;0;0;0;0;0; 0.00190418;1.18174e-08;0.033827901;0.42598599;0;0.00190418;1.18174e-08;0.033827901;0.42598599;0; 0.00190418;1.18174e-08;0.033827901;0.42598599;0;0.00190418;1.18174e-08;0.033827901;0.42598599;0; 0;0;0;0;0;0.27970001;0.42425999;0.24604;7.1675402e-13;0; 0.27970001;0.42425999;0.24604;7.1675402e-13;0;0.27970001;0.42425999;0.24604;7.1675402e-13;0; 0.27970001;0.42425999;0.24604;7.1675402e-13;0;0;0;0;0;0; 0.406872;1.55243e-12;1.37487e-05;0.22317401;0;0.406872;1.55243e-12;1.37487e-05;0.22317401;0; 0.406872;1.55243e-12;1.37487e-05;0.22317401;0;0.406872;1.55243e-12;1.37487e-05;0.22317401;0; 0;0;0;0;0;0.000373872;2.37976e-06;0.0064154901;4.4448901e-14;0; 0.000373872;2.37976e-06;0.0064154901;4.4448901e-14;0;0.000373872;2.37976e-06;0.0064154901;4.4448901e-14;0; 0.000373872;2.37976e-06;0.0064154901;4.4448901e-14;0;0;0;0;0;0; 0.42959401;0.00262347;4.86824e-06;0.00026277499;0;0.42959401;0.00262347;4.86824e-06;0.00026277499;0; 0.42959401;0.00262347;4.86824e-06;0.00026277499;0;0.42959401;0.00262347;4.86824e-06;0.00026277499;0; 0;0;0;0;0;0.099185102;1.72989e-11;1.32198e-08;0.061239399;0; 0.099185102;1.72989e-11;1.32198e-08;0.061239399;0;0.099185102;1.72989e-11;1.32198e-08;0.061239399;0; 0.099185102;1.72989e-11;1.32198e-08;0.061239399;0;0;0;0;0;0; 0.00063980499;0.0120797;3.4228599e-16;0.000113398;0;0.00063980499;0.0120797;3.4228599e-16;0.000113398;0; 0.00063980499;0.0120797;3.4228599e-16;0.000113398;0;0.00063980499;0.0120797;3.4228599e-16;0.000113398;0; 0;0;0;0;0;3.33909e-06;4.2428799e-13;1.6090001e-11;0.00039924399;0; 3.33909e-06;4.2428799e-13;1.6090001e-11;0.00039924399;0;3.33909e-06;4.2428799e-13;1.6090001e-11;0.00039924399;0; 3.33909e-06;4.2428799e-13;1.6090001e-11;0.00039924399;0;0;0;0;0;0; 1.1571e-05;0.25993499;1.76055e-07;0.037213799;0;1.1571e-05;0.25993499;1.76055e-07;0.037213799;0; 1.1571e-05;0.25993499;1.76055e-07;0.037213799;0;1.1571e-05;0.25993499;1.76055e-07;0.037213799;0; 0;0;0;0;0;0.0091469297;0;5.06449e-05;3.6560099e-08;0; 0.0091469297;0;5.06449e-05;3.6560099e-08;0;0.0091469297;0;5.06449e-05;3.6560099e-08;0; 0.0091469297;0;5.06449e-05;3.6560099e-08;0;0;0;0;0;0; 0.0019582801;1.7271699e-05;0.00040164401;0.038839702;0;0.0019582801;1.7271699e-05;0.00040164401;0.038839702;0; 0.0019582801;1.7271699e-05;0.00040164401;0.038839702;0;0.0019582801;1.7271699e-05;0.00040164401;0.038839702;0; 0;0;0;0;0;0.0318661;0.00268858;1.39783e-05;0.0058977599;0; 0.0318661;0.00268858;1.39783e-05;0.0058977599;0;0.0318661;0.00268858;1.39783e-05;0.0058977599;0; 0.0318661;0.00268858;1.39783e-05;0.0058977599;0;0;0;0;0;0; 0.37554801;0.0036525;1.27594e-08;1.63549e-07;0;0.37554801;0.0036525;1.27594e-08;1.63549e-07;0; 0.37554801;0.0036525;1.27594e-08;1.63549e-07;0;0.37554801;0.0036525;1.27594e-08;1.63549e-07;0; 0;0;0;0;0;0.085854098;0.33838001;0.390661;3.6511301e-18;0; 0.085854098;0.33838001;0.390661;3.6511301e-18;0;0.085854098;0.33838001;0.390661;3.6511301e-18;0; 0.085854098;0.33838001;0.390661;3.6511301e-18;0;0;0;0;0;0; 0.143585;0.000421873;0.00086137297;2.27483e-07;0;0.143585;0.000421873;0.00086137297;2.27483e-07;0; 0.143585;0.000421873;0.00086137297;2.27483e-07;0;0.143585;0.000421873;0.00086137297;2.27483e-07;0; 0;0;0;0;0;7.6498097e-08;0.00616829;0.0050247698;5.06942e-09;0; 7.6498097e-08;0.00616829;0.0050247698;5.06942e-09;0;7.6498097e-08;0.00616829;0.0050247698;5.06942e-09;0; 7.6498097e-08;0.00616829;0.0050247698;5.06942e-09;0;0;0;0;0;0; 2.34197e-11;0.31961;2.0409299e-08;0.41610399;0;2.34197e-11;0.31961;2.0409299e-08;0.41610399;0; 2.34197e-11;0.31961;2.0409299e-08;0.41610399;0;2.34197e-11;0.31961;2.0409299e-08;0.41610399;0; 0;0;0;0;0;0.015832599;1.66713e-05;0.00074013497;0.029162901;0; 0.015832599;1.66713e-05;0.00074013497;0.029162901;0;0.015832599;1.66713e-05;0.00074013497;0.029162901;0; 0.015832599;1.66713e-05;0.00074013497;0.029162901;0;0;0;0;0;0; 0.00010524;0.0136846;1.57776e-09;0.00233615;0;0.00010524;0.0136846;1.57776e-09;0.00233615;0; 0.00010524;0.0136846;1.57776e-09;0.00233615;0;0.00010524;0.0136846;1.57776e-09;0.00233615;0; 0;0;0;0;0;0.064751297;3.1768799e-16;1.16833e-06;4.0101301e-14;0; 0.064751297;3.1768799e-16;1.16833e-06;4.0101301e-14;0;0.064751297;3.1768799e-16;1.16833e-06;4.0101301e-14;0; 0.064751297;3.1768799e-16;1.16833e-06;4.0101301e-14;0;0;0;0;0;0; 2.1050299e-08;0.18277401;3.5982799e-07;2.67466e-06;0;2.1050299e-08;0.18277401;3.5982799e-07;2.67466e-06;0; 2.1050299e-08;0.18277401;3.5982799e-07;2.67466e-06;0;2.1050299e-08;0.18277401;3.5982799e-07;2.67466e-06;0; 0;0;0;0;0;4.70537e-06;0.39089301;5.61411e-05;1.93715e-05;0; 4.70537e-06;0.39089301;5.61411e-05;1.93715e-05;0;4.70537e-06;0.39089301;5.61411e-05;1.93715e-05;0; 4.70537e-06;0.39089301;5.61411e-05;1.93715e-05;0;0;0;0;0;0; 3.6449401e-07;0.089969203;3.9199999e-06;0;0;3.6449401e-07;0.089969203;3.9199999e-06;0;0; 3.6449401e-07;0.089969203;3.9199999e-06;0;0;3.6449401e-07;0.089969203;3.9199999e-06;0;0; 0;0;0;0;0;0.0183989;0.034914002;0.00093284401;0.00052059599;0; 0.0183989;0.034914002;0.00093284401;0.00052059599;0;0.0183989;0.034914002;0.00093284401;0.00052059599;0; 0.0183989;0.034914002;0.00093284401;0.00052059599;0;0;0;0;0;0; 0.0036955499;0.0049556601;8.6473602e-18;0.35611901;0;0.0036955499;0.0049556601;8.6473602e-18;0.35611901;0; 0.0036955499;0.0049556601;8.6473602e-18;0.35611901;0;0.0036955499;0.0049556601;8.6473602e-18;0.35611901;0; 0;0;0;0;0;0.284251;5.0267399e-06;0.427347;0.070759498;0; 0.284251;5.0267399e-06;0.427347;0.070759498;0;0.284251;5.0267399e-06;0.427347;0.070759498;0; 0.284251;5.0267399e-06;0.427347;0.070759498;0;0;0;0;0;0; }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [36] 0;1;2;3;4;5;6;7;8;9; 10;11;12;13;14;15;16;17;18;19; 20;21;22;23;24;25;26;27;28;29; 30;31;32;33;34;35; }; }; DataTable @["TrnTestFreq"] { name="TrnTestFreq"; desc=; data { name="data"; el_typ=String_Data; el_def=0; String_Data @["Name"] { name="Name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] "80_L";"80_R";"60_L";"60_R"; }; }; float_Data @["Input"] { name="Input"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 5;5; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [5 5 4] 1;0;0;0;0;1;0;0;0;0; 1;0;0;0;0;1;0;0;0;0; 0;0;0;0;0;0;1;0;0;0; 0;1;0;0;0;0;1;0;0;0; 0;1;0;0;0;0;0;0;0;0; 0;0;1;0;0;0;0;1;0;0; 0;0;1;0;0;0;0;1;0;0; 0;0;0;0;0;0;0;0;1;0; 0;0;0;1;0;0;0;0;1;0; 0;0;0;1;0;0;0;0;0;0; }; }; float_Data @["Output"] { name="Output"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [2 1 4] 1;0;0;1;1;0;0;1; }; }; float_Data @["SNc"] { name="SNc"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;2; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [2 2 4] 0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999; 0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999; }; }; float_Data @["Motor_Cortex"] { name="Motor_Cortex"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [2 1 4] 0;0;0;0;0;0;0;0; }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [4] 0;1;2;3; }; }; DataTable @["TestFreq"] { name="TestFreq"; desc=; data { name="data"; el_typ=String_Data; el_def=0; String_Data @["Name"] { name="Name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] "80_L";"80_R";"60_L";"60_R"; }; }; float_Data @["Input"] { name="Input"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 5;5; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [5 5 4] 1;0;0;0;0;1;0;0;0;0; 1;0;0;0;0;1;0;0;0;0; 0;0;0;0;0;0;1;0;0;0; 0;1;0;0;0;0;1;0;0;0; 0;1;0;0;0;0;0;0;0;0; 0;0;1;0;0;0;0;1;0;0; 0;0;1;0;0;0;0;1;0;0; 0;0;0;0;0;0;0;0;1;0; 0;0;0;1;0;0;0;0;1;0; 0;0;0;1;0;0;0;0;0;0; }; }; float_Data @["Output"] { name="Output"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [2 1 4] 1;0;0;1;1;0;0;1; }; }; float_Data @["SNc"] { name="SNc"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;2; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [2 2 4] 0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999; 0.029999999;0.029999999;0.029999999;0.029999999;0.029999999;0.029999999; }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [4] 0;1;2;3; }; }; DataTable @["TestFreq_Hard"] { name="TestFreq_Hard"; desc=; data { name="data"; el_typ=String_Data; el_def=0; String_Data @["Name"] { name="Name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [2] "80vs60";"80vs60"; }; }; float_Data @["Input"] { name="Input"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 5;5; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [5 5 2] 0.57033199;0;0;0.57033199;0;0.57033199;0;0;0.57033199;0; 0.57033199;0;0;0.57033199;0;0.57033199;0;0;0.57033199;0; 0;0;0;0;0;0.57033199;0;0;0.57033199;0; 0.57033199;0;0;0.57033199;0;0.57033199;0;0;0.57033199;0; 0.57033199;0;0;0.57033199;0;0;0;0;0;0; }; }; float_Data @["Output"] { name="Output"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [2 1 2] 1;0;1;0; }; }; float_Data @["SNc"] { name="SNc"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;2; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [2 2 2] 0.028999999;0.028999999;0.028999999;0.028999999;0.028999999;0.028999999;0.028999999;0.028999999; }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [2] 0;1; }; }; DataTable @["Train_Freq"] { name="Train_Freq"; desc=; data { name="data"; el_typ=String_Data; el_def=0; String_Data @["Name"] { name="Name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [40] "80vs20";"80vs20";"80vs20";"80vs20";"80vs20";"40vs60";"40vs60";"40vs60";"80vs20";"80vs20"; "80vs20";"80vs20";"80vs20";"40vs60";"40vs60";"40vs60";"40vs60";"40vs60";"40vs60";"40vs60"; "20vs80";"20vs80";"20vs80";"20vs80";"20vs80";"20vs80";"20vs80";"20vs80";"20vs80";"20vs80"; "60vs40";"60vs40";"60vs40";"60vs40";"60vs40";"60vs40";"60vs40";"60vs40";"60vs40";"60vs40"; }; }; float_Data @["Input"] { name="Input"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 5;5; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [5 5 40] 1;0;0;0;0;1;0;0;0;0.0099999998; 1;0;0;0;0;1;0;0;0;0; 0;0;0;0;0;1;0;0;0;0; 1;0;0;0;0.0099999998;1;0;0;0;0; 1;0;0;0;0;0;0;0;0;0; 1;0;0;0;0;1;0;0;0;0.0099999998; 1;0;0;0;0;1;0;0;0;0; 0;0;0;0;0;1;0;0;0;0; 1;0;0;0;0.0099999998;1;0;0;0;0; 1;0;0;0;0;0;0;0;0;0; 1;0;0;0;0;1;0;0;0;0.0099999998; 1;0;0;0;0;1;0;0;0;0; 0;0;0;0;0;0;0;0;1;0; 0;0;0;1;0;0;0;0;1;0.0099999998; 0;0;0;1;0;0;0;0;0;0; 0;0;0;1;0;0;0;0;1;0; 0;0;0;1;0.0099999998;0;0;0;1;0; 0;0;0;0;0;0;0;0;1;0; 0;0;0;1;0;0;0;0;1;0.0099999998; 0;0;0;1;0;0;0;0;0;0; 1;0;0;0;0;1;0;0;0;0.0099999998; 1;0;0;0;0;1;0;0;0;0; 0;0;0;0;0;1;0;0;0;0; 1;0;0;0;0.0099999998;1;0;0;0;0; 1;0;0;0;0;0;0;0;0;0; 1;0;0;0;0;1;0;0;0;0.0099999998; 1;0;0;0;0;1;0;0;0;0; 0;0;0;0;0;1;0;0;0;0; 1;0;0;0;0.0099999998;1;0;0;0;0; 1;0;0;0;0;0;0;0;0;0; 1;0;0;0;0;1;0;0;0;0.0099999998; 1;0;0;0;0;1;0;0;0;0; 0;0;0;0;0;0;0;0;1;0; 0;0;0;1;0;0;0;0;1;0.0099999998; 0;0;0;1;0;0;0;0;0;0; 0;0;0;1;0;0;0;0;1;0; 0;0;0;1;0.0099999998;0;0;0;1;0; 0;0;0;0;0;0;0;0;1;0; 0;0;0;1;0;0;0;0;1;0.0099999998; 0;0;0;1;0;0;0;0;0;0; 0;0;0;1;0;0;0;0;1;0; 0;0;0;1;0.0099999998;0;0;0;1;0; 0;0;0;0;0;0;0;0;1;0; 0;0;0;1;0;0;0;0;1;0.0099999998; 0;0;0;1;0;0;0;0;0;0; 0;0;0;1;0;0;0;0;1;0; 0;0;0;1;0.0099999998;0;0;0;1;0; 0;0;0;0;0;0;0;0;1;0; 0;0;0;1;0;0;0;0;1;0.0099999998; 0;0;0;1;0;0;0;0;0;0; 0;1;0;0;0;0;1;0;0;0.0099999998; 0;1;0;0;0;0;1;0;0;0; 0;0;0;0;0;0;1;0;0;0; 0;1;0;0;0.0099999998;0;1;0;0;0; 0;1;0;0;0;0;0;0;0;0; 0;1;0;0;0;0;1;0;0;0.0099999998; 0;1;0;0;0;0;1;0;0;0; 0;0;0;0;0;0;1;0;0;0; 0;1;0;0;0.0099999998;0;1;0;0;0; 0;1;0;0;0;0;0;0;0;0; 0;1;0;0;0;0;1;0;0;0.0099999998; 0;1;0;0;0;0;1;0;0;0; 0;0;0;0;0;0;1;0;0;0; 0;1;0;0;0.0099999998;0;1;0;0;0; 0;1;0;0;0;0;0;0;0;0; 0;1;0;0;0;0;1;0;0;0.0099999998; 0;1;0;0;0;0;1;0;0;0; 0;0;0;0;0;0;1;0;0;0; 0;1;0;0;0.0099999998;0;1;0;0;0; 0;1;0;0;0;0;0;0;0;0; 0;1;0;0;0;0;1;0;0;0.0099999998; 0;1;0;0;0;0;1;0;0;0; 0;0;0;0;0;0;1;0;0;0; 0;1;0;0;0.0099999998;0;1;0;0;0; 0;1;0;0;0;0;0;0;0;0; 0;0;1;0;0;0;0;1;0;0.0099999998; 0;0;1;0;0;0;0;1;0;0; 0;0;0;0;0;0;0;1;0;0; 0;0;1;0;0.0099999998;0;0;1;0;0; 0;0;1;0;0;0;0;0;0;0; 0;0;1;0;0;0;0;1;0;0.0099999998; 0;0;1;0;0;0;0;1;0;0; 0;0;0;0;0;0;0;1;0;0; 0;0;1;0;0.0099999998;0;0;1;0;0; 0;0;1;0;0;0;0;0;0;0; 0;0;1;0;0;0;0;1;0;0.0099999998; 0;0;1;0;0;0;0;1;0;0; 0;0;0;0;0;0;0;1;0;0; 0;0;1;0;0.0099999998;0;0;1;0;0; 0;0;1;0;0;0;0;0;0;0; 0;0;1;0;0;0;0;1;0;0.0099999998; 0;0;1;0;0;0;0;1;0;0; 0;0;0;0;0;0;0;1;0;0; 0;0;1;0;0.0099999998;0;0;1;0;0; 0;0;1;0;0;0;0;0;0;0; 0;0;1;0;0;0;0;1;0;0.0099999998; 0;0;1;0;0;0;0;1;0;0; 0;0;0;0;0;0;0;1;0;0; 0;0;1;0;0.0099999998;0;0;1;0;0; 0;0;1;0;0;0;0;0;0;0; }; }; float_Data @["Output"] { name="Output"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [2 1 40] 1;0;1;0;1;0;1;0;1;0; 0;1;0;1;1;0;1;0;1;0; 1;0;0;1;0;1;1;0;1;0; 0;1;0;1;0;1;0;1;1;0; 0;1;0;1;0;1;0;1;0;1; 0;1;0;1;0;1;1;0;1;0; 1;0;1;0;1;0;1;0;1;0; 1;0;0;1;0;1;0;1;0;1; }; }; float_Data @["SNc"] { name="SNc"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;2; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [2 2 40] 100;100;100;100;0.035;0.035;0.035;0.035;0.035;0.035; 0.035;0.035;0.035;0.035;0.035;0.035;0;0;0;0; 0;0;0;0;0;0;0;0;0.035;0.035; 0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035; 0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035;0;0; 0;0;0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0.035;0.035;0.035;0.035; 0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035; 0.035;0.035;0.035;0.035;0.035;0.035;0;0;0;0; 0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035; 0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035;0.035; 100;100;100;100;100;100;100;100;0;0; 0;0;0;0;0;0;100;100;100;100; 100;100;100;100;0.035;0.035;0.035;0.035;0.035;0.035; 0.035;0.035;0.035;0.035;0.035;0.035;0;0;0;0; }; }; float_Data @["Motor_Cortex"] { name="Motor_Cortex"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;2; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; ar { name="ar"; [2 2 40] 1;0;1;0;1;0;1;0;1;0; 1;0;1;0;1;0;1;0;1;0; 1;0;1;0;1;0;1;0;1;0; 1;0;1;0;1;0;0;1;0;1; 1;0;1;0;0;1;0;1;1;0; 1;0;1;0;1;0;1;0;1;0; 1;0;1;0;1;0;1;0;1;0; 1;0;1;0;1;0;1;0;1;0; 0;1;0;1;0;1;0;1;0;1; 0;1;0;1;0;1;1;0;1;0; 0;1;0;1;0;1;0;1;0;1; 0;1;0;1;0;1;0;1;0;1; 1;0;1;0;1;0;1;0;0;1; 0;1;0;1;0;1;1;0;1;0; 1;0;1;0;0;1;0;1;0;1; 0;1;0;1;0;1;1;0;1;0; }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [40] 0;1;2;3;4;5;6;7;8;9; 10;11;12;13;14;15;16;17;18;19; 20;21;22;23;24;25;26;27;28;29; 30;31;32;33;34;35;36;37;38;39; }; }; }; DataTable_Group @.gp["OutputData"] { name="OutputData"; el_typ=DataTable; el_def=0; save_tables=1; DataTable @["TrialOutputData"] { name="TrialOutputData"; desc=; data { name="data"; el_typ=int_Data; el_def=0; int_Data @["batch"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_81"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="batch"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; int_Data @["epoch"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_82"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="epoch"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; int_Data @["trial"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_83"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="trial"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; String_Data @["trial_name"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_96"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="trial_name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; String_Data @["group_name"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_97"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="group_name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; int_Data @["phase_no"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_84"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="phase_no"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["minus_cycles"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_98"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="minus_cycles"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["sse"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_99"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="sse"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["ext_rew"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_100"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="ext_rew"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["Output_sse"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_101"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="Output_sse"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [0] }; }; DataTable @["TrnTestTrialOutputData"] { name="TrnTestTrialOutputData"; desc=; data { name="data"; el_typ=int_Data; el_def=0; int_Data @["batch"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_81"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="batch"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; int_Data @["epoch"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_82"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="epoch"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; int_Data @["trial"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_83"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="trial"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; String_Data @["trial_name"] { name="trial_name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; String_Data @["group_name"] { name="group_name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; int_Data @["phase_no"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_84"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="phase_no"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["minus_cycles"] { name="minus_cycles"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["sse"] { name="sse"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["ext_rew"] { name="ext_rew"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["Output_sse"] { name="Output_sse"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [0] }; }; DataTable @["EpochOutputData"] { name="EpochOutputData"; desc=; data { name="data"; el_typ=int_Data; el_def=0; int_Data @["batch"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_83"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="batch"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; int_Data @["epoch"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_84"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="epoch"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["avg_sse"] { name="avg_sse"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["cnt_err"] { name="cnt_err"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["avg_ext_rew"] { name="avg_ext_rew"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["avg_cycles"] { name="avg_cycles"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [0] }; }; DataTable @["TrnTestEpochOutputData"] { name="TrnTestEpochOutputData"; desc=; data { name="data"; el_typ=int_Data; el_def=0; int_Data @["batch"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_83"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="batch"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; int_Data @["epoch"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_84"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="epoch"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["avg_sse"] { name="avg_sse"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["cnt_err"] { name="cnt_err"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["avg_ext_rew"] { name="avg_ext_rew"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["avg_cycles"] { name="avg_cycles"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [0] }; }; DataTable @["CycleOutputData"] { name="CycleOutputData"; desc=; data { name="data"; el_typ=int_Data; el_def=0; int_Data @["batch"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_80"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="batch"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; int_Data @["epoch"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_81"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="epoch"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; int_Data @["trial"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_82"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="trial"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; String_Data @["trial_name"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_85"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="trial_name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; String_Data @["group_name"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_86"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="group_name"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; int_Data @["phase_no"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_83"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="phase_no"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; int_Data @["cycle"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_84"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="cycle"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; float_Data @["sse"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_87"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="sse"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; float_Data @["ext_rew"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_88"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="ext_rew"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; float_Data @["STN_acts_avg"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_89"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="STN_acts_avg"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; float_Data @["Motor__acts_avg"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_90"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="Motor__acts_avg"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; float_Data @["Thalam_acts_avg"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_91"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="Thalam_acts_avg"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; float_Data @["GP_Int_acts_avg"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_92"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="GP_Int_acts_avg"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; float_Data @["GP_Ext_acts_avg"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_93"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="GP_Ext_acts_avg"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; float_Data @["Output_act"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_94"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="Output_act"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [2] ;; }; width=0; }; float_Data @["Output_units_0_act"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_95"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="Output_units_0_act"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; }; }; data_flags=AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [0] }; }; }; DataTable_Group @.gp["AnalysisData"] { name="AnalysisData"; el_typ=DataTable; el_def=0; save_tables=1; DataTable @["Go_NoGo"] { name="Go_NoGo"; desc=; data { name="data"; el_typ=float_Data; el_def=0; float_Data @["gn_pos"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_77"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="gn_pos"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["gn_neg"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_78"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="gn_neg"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["nogo_pos"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_79"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="nogo_pos"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; float_Data @["nogo_neg"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_80"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="nogo_neg"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [0] }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [0] }; }; DataTable @["Go_NoGo_Group"] { name="Go_NoGo_Group"; desc=; data { name="data"; el_typ=float_Data; el_def=0; float_Data @["gn_pos_mean"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_81"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="gn_pos_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [1] 0.72030139; }; }; float_Data @["gn_pos_sem"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_82"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="gn_pos_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [1] 1.4854945; }; }; float_Data @["gn_neg_mean"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_83"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="gn_neg_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [1] -2.8311548; }; }; float_Data @["gn_neg_sem"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_84"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_wd"] { name="view_panel_wd"; value 6 0=0.27173912525177; val_type_fixed=0; }; }; name="gn_neg_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [1] 1.1353648; }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [1] 0; }; }; DataTable @["TrnTestTrialOutputData_Group"] { name="TrnTestTrialOutputData_Group"; desc=; data { name="data"; el_typ=String_Data; el_def=0; String_Data @["trial_name_group"] { name="trial_name_group"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] "60_L";"60_R";"80_L";"80_R"; }; }; float_Data @["batch_mean"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItemBase; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="batch_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 12;12;12;12; }; }; float_Data @["batch_sem"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItemBase; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="batch_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 0.43563864;0.43563864;0.43563864;0.43563864; }; }; float_Data @["epoch_mean"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItemBase; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="epoch_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 5;5;5;5; }; }; float_Data @["epoch_sem"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItemBase; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="epoch_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 0.19104017;0.19104017;0.19104017;0.19104017; }; }; float_Data @["trial_mean"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItemBase; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="trial_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 1.3381819;1.6763636;1.4763637;1.5090909; }; }; float_Data @["trial_sem"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItemBase; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="trial_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 0.06732633;0.066796653;0.065634295;0.068806037; }; }; float_Data @["phase_no_mean"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItemBase; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="phase_no_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 1;1;1;1; }; }; float_Data @["phase_no_sem"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItemBase; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="phase_no_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 0;0;0;0; }; }; float_Data @["minus_cycles_mean"] { name="minus_cycles_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 100;100;100;100; }; }; float_Data @["minus_cycles_sem"] { name="minus_cycles_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 0;0;0;0; }; }; float_Data @["sse_mean"] { name="sse_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 0.81960583;0.99017566;0.96569747;0.51253742; }; }; float_Data @["sse_sem"] { name="sse_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 0.057160735;0.058530346;0.059457067;0.051612351; }; }; float_Data @["ext_rew_mean"] { name="ext_rew_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 0;0;0;0; }; }; float_Data @["ext_rew_sem"] { name="ext_rew_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 0;0;0;0; }; }; float_Data @["Output_sse_mean"] { name="Output_sse_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 0.81960583;0.99017566;0.96569747;0.51253742; }; }; float_Data @["Output_sse_sem"] { name="Output_sse_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [4] 0.057160735;0.058530346;0.059457067;0.051612351; }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [4] 0;1;2;3; }; }; DataTable @["TrnTestEpochOutputData_Group"] { name="TrnTestEpochOutputData_Group"; desc=; data { name="data"; el_typ=int_Data; el_def=0; int_Data @["epoch_group"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_84"; el_typ=UserDataItem; el_def=0; UserDataItem @["NARROW"] { name="NARROW"; value 1 0=1; val_type_fixed=0; }; }; name="epoch_group"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [11] 0;1;2;3;4;5;6;7;8;9; 10; }; }; float_Data @["cnt_err_mean"] { name="cnt_err_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [11] 1.88;1.6;1.48;1.52;0.92000002;1.16;0.92000002;0.92000002;0.95999998;0.83999997; 0.72000003; }; }; float_Data @["cnt_err_sem"] { name="cnt_err_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [11] 0.059975665;0.059191633;0.048690893;0.048690893;0.053817742;0.053162742;0.051033121;0.051033121;0.049758542;0.040723391; 0.046857446; }; }; float_Data @["avg_sse_mean"] { name="avg_sse_mean"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [11] 0.85473001;0.75366861;0.6195088;0.67068803;0.37299001;0.46269739;0.38704315;0.30387321;0.40236533;0.27886432; 0.29213515; }; }; float_Data @["avg_sse_sem"] { name="avg_sse_sem"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=0; cell_geom{ 1; }; calc_expr { expr=; }; dim_names { name="dim_names"; [0] }; width=0; ar { name="ar"; [11] 0.030012507;0.028891692;0.02513293;0.022121863;0.021117926;0.022015814;0.021167234;0.018652635;0.02268799;0.014291255; 0.019959824; }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [11] 0;1;2;3;4;5;6;7;8;9; 10; }; }; }; }; programs { name="programs"; el_typ=Program; el_def=0; tags=; desc=; Program @["ActBasedRField_Go"] { name="ActBasedRField_Go"; short_nm="Field"; tags="Statistic, Receptive Field"; desc="computes an activation based receptive field using ActBasedRF object type -- allows you to see how units in a selected target layer relate to activations of units throughout the network"; flags=0; objs { name="objs"; el_typ=ActBasedRF; el_def=0; ActBasedRF @["ActBasedRF_0"] { name="ActBasedRF_0"; rf_data=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"].objs["ActRFDataGo"]$$; network=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; trg_layer=.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Go"]$$; norm_mode=NORM_RF_LAY; threshold=0.5; }; DataTable @["ActRFDataGo"] { name="ActRFDataGo"; desc="receptive field data -- could move this into AnalysisData if you want.."; data { name="data"; el_typ=float_Data; el_def=0; float_Data @["Input"] { name="Input"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 5;5; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [5 5 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; }; }; float_Data @["SNc"] { name="SNc"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;2; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 2 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0; }; }; float_Data @["GP_Int"] { name="GP_Int"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;2; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 2 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0; }; }; float_Data @["GP_Ext"] { name="GP_Ext"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 1 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0; }; }; float_Data @["Thalamus"] { name="Thalamus"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 1 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0; }; }; float_Data @["Motor_Cortex"] { name="Motor_Cortex"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;2; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 2 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0; }; }; float_Data @["Output"] { name="Output"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 1 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0; }; }; float_Data @["STN"] { name="STN"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 3;3; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [3 3 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0; }; }; float_Data @["Go"] { name="Go"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;9; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 9 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0; }; }; float_Data @["NoGo"] { name="NoGo"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;9; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 9 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0; }; }; float_Data @["Striatum_Inhib"] { name="Striatum_Inhib"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;8; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 8 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0; }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [18] 0;1;2;3;4;5;6;7;8;9; 10;11;12;13;14;15;16;17; }; }; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["final_rf"] { name="final_rf"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="whether to compute the final receptive field or just increment the sums -- call with false to accumulate, and true at end to get final values"; init_from=NULL; }; ProgVar @["init_rf"] { name="init_rf"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="whether to compute the final receptive field or just increment the sums -- call with false to accumulate, and true at end to get final values"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["ActBasedRF_0"] { name="ActBasedRF_0"; var_type=T_Object; object_type=ActBasedRF; object_val=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"].objs["ActBasedRF_0"]$$; objs_ptr=1; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["ActRFDataGo"] { name="ActRFDataGo"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"].objs["ActRFDataGo"]$; objs_ptr=1; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="data table to record activation based receptive field information into"; init_from=NULL; }; ProgVar @["trg_layer0_name"] { name="trg_layer0_name"; var_type=T_String; string_val="Go"; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["trg_layer0"] { name="trg_layer0"; var_type=T_Object; object_type=LeabraLayer; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Go"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="target layer to get receptive field data for"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"].vars["trg_layer0"]$$; obj=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"].args["network"]$$; method=Network::FindLayer; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="nm"; required=1; def_val=; expr { expr="trg_layer0_name"; }; }; }; }; MethodCall @[1] { desc=; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"].args["network"]$; method=Network::FindLayer; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="nm"; required=1; def_val=; expr { expr="trg_layer0_name"; }; }; }; }; MethodCall @[2] { desc=; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"].vars["ActBasedRF_0"]$$; method=ActBasedRF::InitAll; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="ActRFDataGo"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[2] { arg_type=Layer_ptr; type="Layer*"; name="tlay"; required=1; def_val=; expr { expr="trg_layer0"; }; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; If @[0] { desc=; flags=0; orig_prog_code=; cond { expr="init_rf"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc=; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"].vars["ActBasedRF_0"]$; method=ActBasedRF::InitAll; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="ActRFDataGo"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[2] { arg_type=Layer_ptr; type="Layer*"; name="tlay"; required=1; def_val=; expr { expr="trg_layer0"; }; }; }; }; }; }; Else @[1] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; If @[0] { desc=; flags=0; orig_prog_code=; cond { expr="final_rf"; }; true_code { name="true_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc=; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"].vars["ActBasedRF_0"]$; method=ActBasedRF::ComputeRF; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; Else @[1] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc=; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"].vars["ActBasedRF_0"]$; method=ActBasedRF::IncrementSums; meth_args { name="meth_args"; el_typ=ProgArg; el_def=0; }; }; }; }; }; }; }; step_prog=NULL; step_n=1; }; Program @["ActBasedRField_NoGo"] { name="ActBasedRField_NoGo"; short_nm="cBsRFl"; tags="Statistic, Receptive Field"; desc="computes an activation based receptive field using ActBasedRF object type -- allows you to see how units in a selected target layer relate to activations of units throughout the network"; flags=0; objs { name="objs"; el_typ=ActBasedRF; el_def=0; ActBasedRF @["ActBasedRF_1"] { name="ActBasedRF_1"; rf_data=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"].objs["ActRFDataNoGo"]$$; network=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; trg_layer=.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["NoGo"]$$; norm_mode=NORM_RF_LAY; threshold=0.5; }; DataTable @["ActRFDataNoGo"] { name="ActRFDataNoGo"; desc="receptive field data -- could move this into AnalysisData if you want.."; data { name="data"; el_typ=float_Data; el_def=0; float_Data @["Input"] { name="Input"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 5;5; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [5 5 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; }; }; float_Data @["SNc"] { name="SNc"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;2; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 2 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0; }; }; float_Data @["GP_Int"] { name="GP_Int"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;2; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 2 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0; }; }; float_Data @["GP_Ext"] { name="GP_Ext"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 1 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0; }; }; float_Data @["Thalamus"] { name="Thalamus"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 1 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0; }; }; float_Data @["Motor_Cortex"] { name="Motor_Cortex"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;2; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 2 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0; }; }; float_Data @["Output"] { name="Output"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;1; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 1 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0; }; }; float_Data @["STN"] { name="STN"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 3;3; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [3 3 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0; }; }; float_Data @["Go"] { name="Go"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;9; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 9 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0; }; }; float_Data @["NoGo"] { name="NoGo"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;9; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 9 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0; }; }; float_Data @["Striatum_Inhib"] { name="Striatum_Inhib"; col_flags=SAVE_ROWS|SAVE_DATA; is_matrix=1; cell_geom{ 2;8; }; calc_expr { expr=; }; dim_names { name=; [2] ;; }; width=0; ar { name=; [2 8 18] 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0;0;0; 0;0;0;0;0;0;0;0; }; }; }; data_flags=SAVE_ROWS|AUTO_CALC; auto_load=NO_AUTO_LOAD; auto_load_file=; keygen 4 0=0; row_indexes { name="row_indexes"; [18] 0;1;2;3;4;5;6;7;8;9; 10;11;12;13;14;15;16;17; }; }; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["final_rf"] { name="final_rf"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="whether to compute the final receptive field or just increment the sums -- call with false to accumulate, and true at end to get final values"; init_from=NULL; }; ProgVar @["init_rf"] { name="init_rf"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="whether to compute the final receptive field or just increment the sums -- call with false to accumulate, and true at end to get final values"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["ActBasedRF_1"] { name="ActBasedRF_1"; var_type=T_Object; object_type=ActBasedRF; object_val=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"].objs["ActBasedRF_1"]$$; objs_ptr=1; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["ActRFDataNoGo"] { name="ActRFDataNoGo"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"].objs["ActRFDataNoGo"]$; objs_ptr=1; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["trg_layer1_name"] { name="trg_layer1_name"; var_type=T_String; string_val="NoGo"; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["trg_layer1"] { name="trg_layer1"; var_type=T_Object; object_type=LeabraLayer; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["NoGo"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="target layer to get receptive field data for"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"].vars["trg_layer1"]$$; obj=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"].args["network"]$$; method=Network::FindLayer; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="nm"; required=1; def_val=; expr { expr="trg_layer1_name"; }; }; }; }; MethodCall @[1] { desc=; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"].args["network"]$; method=Network::FindLayer; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="nm"; required=1; def_val=; expr { expr="trg_layer1_name"; }; }; }; }; MethodCall @[2] { desc=; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"].vars["ActBasedRF_1"]$$; method=ActBasedRF::InitAll; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="ActRFDataNoGo"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[2] { arg_type=Layer_ptr; type="Layer*"; name="tlay"; required=1; def_val=; expr { expr="trg_layer1"; }; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; If @[0] { desc=; flags=0; orig_prog_code=; cond { expr="init_rf"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc=; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"].vars["ActBasedRF_1"]$; method=ActBasedRF::InitAll; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="ActRFDataNoGo"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[2] { arg_type=Layer_ptr; type="Layer*"; name="tlay"; required=1; def_val=; expr { expr="trg_layer1"; }; }; }; }; }; }; Else @[1] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; If @[0] { desc=; flags=0; orig_prog_code=; cond { expr="final_rf"; }; true_code { name="true_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc=; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"].vars["ActBasedRF_1"]$; method=ActBasedRF::ComputeRF; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; Else @[1] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc=; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"].vars["ActBasedRF_1"]$; method=ActBasedRF::IncrementSums; meth_args { name="meth_args"; el_typ=ProgArg; el_def=0; }; }; }; }; }; }; }; step_prog=NULL; step_n=1; }; Program @["LeabraStartup"] { name="LeabraStartup"; short_nm="Start"; tags="Leabra, Startup"; desc="run project in the background (replaces leabra_startup.css) command line is: emergent -nogui -ni -p .proj [epochs=xxx] [batches=xxx] [tag=xxx]"; flags=NO_STOP_STEP|STARTUP_RUN; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to operate on -- updates batch counter on network and passes it to train program"; init_from=NULL; }; ProgVar @["pause"] { name="pause"; var_type=T_Int; int_val=30; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["num_intact_snc_units"] { name="num_intact_snc_units"; var_type=T_Int; int_val=4; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["DA_burst_val"] { name="DA_burst_val"; var_type=T_Real; real_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["D2rel"] { name="D2rel"; var_type=T_Real; real_val=2.5; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["meds"] { name="meds"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["learning"] { name="learning"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["exoression"] { name="exoression"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=.projects["BG_PS_inhib_e7"].data.gp["InputData"]["Train_Freq"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns -- not used by this program, but passed to train program"; init_from=NULL; }; ProgVar @["TrainFreq"] { name="TrainFreq"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["Train_Freq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns -- not used by this program, but passed to train program"; init_from=NULL; }; ProgVar @["TestFreq"] { name="TestFreq"; var_type=T_Object; object_type=DataTable; object_val=.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns -- not used by this program, but passed to train program"; init_from=NULL; }; ProgVar @["TrnTestFreq"] { name="TrnTestFreq"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns -- not used by this program, but passed to train program"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["batch"] { name="batch"; var_type=T_Object; object_type=Program; object_val=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="set this to point to your batch process"; init_from=NULL; }; ProgVar @["tag"] { name="tag"; var_type=T_String; string_val=; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["log_dir"] { name="log_dir"; var_type=T_String; string_val=; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="log file directory"; init_from=NULL; }; ProgVar @["log_file_nm"] { name="log_file_nm"; var_type=T_String; string_val="BG_ProbSelect_R7.5.gn.ave.dat"; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="name of log file"; init_from=NULL; }; ProgVar @["EpochOutputData"] { name="EpochOutputData"; var_type=T_Object; object_type=DataTable; object_val=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["EpochOutputData"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["TrialOutputData"] { name="TrialOutputData"; var_type=T_Object; object_type=DataTable; object_val=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrialOutputData"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["Go_NoGo"] { name="Go_NoGo"; var_type=T_Object; object_type=DataTable; object_val=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["Go_NoGo_Group"] { name="Go_NoGo_Group"; var_type=T_Object; object_type=DataTable; object_val=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo_Group"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["TrnTestEpochOutputData"] { name="TrnTestEpochOutputData"; var_type=T_Object; object_type=DataTable; object_val=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestEpochOutputData"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["TrnTestEpochOutputData_Group"] { name="TrnTestEpochOutputData_Group"; var_type=T_Object; object_type=DataTable; object_val=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["TrnTestEpochOutputData_Group"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; IfReturn @[0] { desc="don't run if running in the gui!"; flags=0; orig_prog_code=; cond { expr="taMisc::gui_active"; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; IfReturn @[0] { desc="don't run if running in the gui!"; flags=0; orig_prog_code=; cond { expr="taMisc::gui_active"; }; }; Comment @[1] { desc="add our special args from command line"; flags=0; orig_prog_code=; }; MiscCall @[2] { desc=; flags=0; orig_prog_code=; result_var=NULL; object_type=taMisc; method=taMisc::AddArgName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="flag"; required=1; def_val="\"\""; expr { expr="\"tag=\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="name"; required=1; def_val="\"\""; expr { expr="\"FileTag\""; }; }; }; }; MiscCall @[3] { desc=; flags=0; orig_prog_code=; result_var=NULL; object_type=taMisc; method=taMisc::AddArgName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="flag"; required=1; def_val="\"\""; expr { expr="\"logdir=\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="name"; required=1; def_val="\"\""; expr { expr="\"LogDir\""; }; }; }; }; MiscCall @[4] { desc=; flags=0; orig_prog_code=; result_var=NULL; object_type=taMisc; method=taMisc::AddArgName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="flag"; required=1; def_val="\"\""; expr { expr="\"batches=\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="name"; required=1; def_val="\"\""; expr { expr="\"batches\""; }; }; }; }; MiscCall @[5] { desc=; flags=0; orig_prog_code=; result_var=NULL; object_type=taMisc; method=taMisc::AddArgName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="flag"; required=1; def_val="\"\""; expr { expr="\"pause=\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="name"; required=1; def_val="\"\""; expr { expr="\"pause\""; }; }; }; }; MiscCall @[6] { desc=; flags=0; orig_prog_code=; result_var=NULL; object_type=taMisc; method=taMisc::AddArgName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="flag"; required=1; def_val="\"\""; expr { expr="\"meds=\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="name"; required=1; def_val="\"\""; expr { expr="\"meds\""; }; }; }; }; MiscCall @[7] { desc=; flags=0; orig_prog_code=; result_var=NULL; object_type=taMisc; method=taMisc::AddArgName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="flag"; required=1; def_val="\"\""; expr { expr="\"learning=\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="name"; required=1; def_val="\"\""; expr { expr="\"learning\""; }; }; }; }; MiscCall @[8] { desc=; flags=0; orig_prog_code=; result_var=NULL; object_type=taMisc; method=taMisc::AddArgName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="flag"; required=1; def_val="\"\""; expr { expr="\"expression=\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="name"; required=1; def_val="\"\""; expr { expr="\"expression\""; }; }; }; }; MiscCall @[9] { desc=; flags=0; orig_prog_code=; result_var=NULL; object_type=taMisc; method=taMisc::AddArgName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="flag"; required=1; def_val="\"\""; expr { expr="\"num_intact_snc_units=\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="name"; required=1; def_val="\"\""; expr { expr="\"num_intact_snc_units\""; }; }; }; }; MiscCall @[10] { desc=; flags=0; orig_prog_code=; result_var=NULL; object_type=taMisc; method=taMisc::AddArgName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="flag"; required=1; def_val="\"\""; expr { expr="\"DA_burst_val=\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="name"; required=1; def_val="\"\""; expr { expr="\"DA_burst_val\""; }; }; }; }; MiscCall @[11] { desc=; flags=0; orig_prog_code=; result_var=NULL; object_type=taMisc; method=taMisc::AddArgName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="flag"; required=1; def_val="\"\""; expr { expr="\"D2rel=\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="name"; required=1; def_val="\"\""; expr { expr="\"D2rel\""; }; }; }; }; MiscCall @[12] { desc="key step: actually process args!"; flags=0; orig_prog_code=; result_var=NULL; object_type=taMisc; method=taMisc::UpdateArgs; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; RegisterArgs @[13] { desc="This is KEY!!! actuall processes all args, including those from ProgVarFmArg guys below"; flags=0; orig_prog_code=; }; Comment @[14] { desc="Initialize and set variables from args"; flags=0; orig_prog_code=; }; PrintExpr @[15] { desc=; flags=0; orig_prog_code=; expr { expr="\"Loaded project: \" << .projects[0].file_name"; }; my_mask=NULL; debug_level=NULL; }; MiscCall @[16] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["tag"]$$; object_type=taMisc; method=taMisc::FindArgByName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="nm"; required=1; def_val="\"\""; expr { expr="\"FileTag\""; }; }; }; }; MiscCall @[17] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["log_dir"]$$; object_type=taMisc; method=taMisc::FindArgByName; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="nm"; required=1; def_val="\"\""; expr { expr="\"LogDir\""; }; }; }; }; ProgVarFmArg @[18] { desc=; flags=0; orig_prog_code=; prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"]$; var_name="max_batch"; arg_name="batches"; }; ProgVarFmArg @[19] { desc=; flags=0; orig_prog_code=; prog=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"]$$; var_name="pause"; arg_name="pause"; }; ProgVarFmArg @[20] { desc=; flags=0; orig_prog_code=; prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"]$; var_name="meds"; arg_name="meds"; }; ProgVarFmArg @[21] { desc=; flags=0; orig_prog_code=; prog=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"]$$; var_name="learning"; arg_name="learning"; }; ProgVarFmArg @[22] { desc=; flags=0; orig_prog_code=; prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"]$; var_name="expression"; arg_name="expression"; }; ProgVarFmArg @[23] { desc=; flags=0; orig_prog_code=; prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"]$; var_name="max_epoch"; arg_name="epochs"; }; ProgVarFmArg @[24] { desc=; flags=0; orig_prog_code=; prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"]$; var_name="num_intact_snc_units"; arg_name="num_intact_snc_units"; }; ProgVarFmArg @[25] { desc=; flags=0; orig_prog_code=; prog=NULL; var_name="DA_burst_val"; arg_name="DA_burst_val"; }; ProgVarFmArg @[26] { desc=; flags=0; orig_prog_code=; prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"]$; var_name="D2rel"; arg_name="D2rel"; }; Comment @[27] { desc="Set log files"; flags=0; orig_prog_code=; }; MethodCall @[28] { desc="last arg is to include dmem proc number"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["log_file_nm"]$$; obj=.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["Go_NoGo"]$$; method=taBase::GetFileNameFmProject; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="ext"; required=1; def_val=; expr { expr="\".gn.dat\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="tag"; required=0; def_val="\"\""; expr { expr="tag"; }; }; ProgArg @[2] { arg_type=const_taString_ref; type="taString&"; name="subdir"; required=0; def_val="\"\""; expr { expr="log_dir"; }; }; ProgArg @[3] { arg_type=bool; type="bool"; name="dmem_proc_no"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; MethodCall @[29] { desc="last arg is to restrict log to dmem_proc = 0"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["Go_NoGo"]$; method=DataTable::SaveDataLog; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="fname"; required=0; def_val="\"\""; expr { expr="log_file_nm"; }; }; ProgArg @[1] { arg_type=bool; type="bool"; name="append"; required=0; def_val="false"; expr { expr="false"; }; }; ProgArg @[2] { arg_type=bool; type="bool"; name="dmem_proc_0"; required=0; def_val="true"; expr { expr="true"; }; }; }; }; MethodCall @[30] { desc="last arg is to include dmem proc number"; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["log_file_nm"]$; obj=.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["Go_NoGo_Group"]$$; method=taBase::GetFileNameFmProject; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="ext"; required=1; def_val=; expr { expr="\".gn.ave.dat\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="tag"; required=0; def_val="\"\""; expr { expr="tag"; }; }; ProgArg @[2] { arg_type=const_taString_ref; type="taString&"; name="subdir"; required=0; def_val="\"\""; expr { expr="log_dir"; }; }; ProgArg @[3] { arg_type=bool; type="bool"; name="dmem_proc_no"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; MethodCall @[31] { desc="last arg is to include dmem proc number"; flags=OFF; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["log_file_nm"]$; obj=.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["TrnTestEpochOutputData"]$$; method=taBase::GetFileNameFmProject; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="ext"; required=1; def_val=; expr { expr="\".trl.dat\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="tag"; required=0; def_val="\"\""; expr { expr="tag"; }; }; ProgArg @[2] { arg_type=const_taString_ref; type="taString&"; name="subdir"; required=0; def_val="\"\""; expr { expr="log_dir"; }; }; ProgArg @[3] { arg_type=bool; type="bool"; name="dmem_proc_no"; required=0; def_val="false"; expr { expr="true"; }; }; }; }; MethodCall @[32] { desc="last arg is to restrict log to dmem_proc = 0"; flags=OFF; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["TrnTestEpochOutputData"]$; method=DataTable::SaveDataLog; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="fname"; required=0; def_val="\"\""; expr { expr="log_file_nm"; }; }; ProgArg @[1] { arg_type=bool; type="bool"; name="append"; required=0; def_val="false"; expr { expr="false"; }; }; ProgArg @[2] { arg_type=bool; type="bool"; name="dmem_proc_0"; required=0; def_val="true"; expr { expr="false"; }; }; }; }; PrintExpr @[33] { desc=; flags=0; orig_prog_code=; expr { expr="\"Running: \" << batch.name"; }; my_mask=NULL; debug_level=NULL; }; MethodCall @[34] { desc=; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["batch"]$$; method=Program::Init; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; ProgramCall @[35] { desc=; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="input_data"; }; }; ProgArg @[2] { arg_type=DataTable; type="DataTable*"; name="TrainFreq"; required=1; def_val=; expr { expr="TrainFreq"; }; }; ProgArg @[3] { arg_type=DataTable; type="DataTable*"; name="TestFreq"; required=1; def_val=; expr { expr="TestFreq"; }; }; ProgArg @[4] { arg_type=DataTable; type="DataTable*"; name="TrnTestFreq"; required=1; def_val=; expr { expr="TrnTestFreq"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"]$; targ_ld_init="*LeabraBatch*"; }; MethodCall @[36] { desc="last arg is to restrict log to dmem_proc = 0"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs["LeabraStartup"].vars["Go_NoGo_Group"]$; method=DataTable::SaveData; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="fname"; required=0; def_val="\"\""; expr { expr="log_file_nm"; }; }; ProgArg @[1] { arg_type=DataTable::Delimiters; type="DataTable::Delimiters"; name="delim"; required=0; def_val="DataTable::TAB"; expr { expr=; }; }; ProgArg @[2] { arg_type=bool; type="bool"; name="quote_str"; required=0; def_val="true"; expr { expr=; }; }; ProgArg @[3] { arg_type=bool; type="bool"; name="save_headers"; required=0; def_val="true"; expr { expr=; }; }; }; }; }; step_prog=NULL; step_n=1; }; Program_Group @.gp["LeabraAll_Std"] { name="LeabraAll_Std"; el_typ=Program; el_def=0; tags="Leabra, Std, All"; desc="The full set of programs for training a standard Leabra network"; Program @["LeabraBatch"] { name="LeabraBatch"; short_nm="Batch"; tags="Leabra, Std"; desc="Iterate over training runs (a batch of training runs) -- just a simple loop that calls training program"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to operate on -- updates batch counter on network and passes it to train program"; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["Train_Freq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns -- not used by this program, but passed to train program"; init_from=NULL; }; ProgVar @["TrainFreq"] { name="TrainFreq"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["Train_Freq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc="datatable with training patterns"; init_from=NULL; }; ProgVar @["TestFreq"] { name="TestFreq"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["TrnTestFreq"] { name="TrnTestFreq"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["batch"] { name="batch"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="batch counter"; init_from=NULL; }; ProgVar @["tstcycle"] { name="tstcycle"; var_type=T_Int; int_val=100; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="batch counter"; init_from=NULL; }; ProgVar @["meds"] { name="meds"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="simulate da meds (reduced da dip)?"; init_from=NULL; }; ProgVar @["DA_dip_val"] { name="DA_dip_val"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["tonic_DA"] { name="tonic_DA"; var_type=T_Real; real_val=0.026; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["Go_NoGo"] { name="Go_NoGo"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns"; init_from=NULL; }; ProgVar @["Go_NoGo_Group"] { name="Go_NoGo_Group"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo_Group"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns"; init_from=NULL; }; ProgVar @["TrnTestEpochOutputData"] { name="TrnTestEpochOutputData"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestEpochOutputData"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns"; init_from=NULL; }; ProgVar @["out"] { name="out"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["TrnTestEpochOutputData_Group"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns"; init_from=NULL; }; ProgVar @["max_batch"] { name="max_batch"; var_type=T_Int; int_val=25; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="maximum number of batch runs to perform"; init_from=NULL; }; ProgVar @["train_mode"] { name="train_mode"; var_type=T_HardEnum; int_val=1; hard_enum_type=Network::TrainMode; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc="TRAIN = update weights (learn), TEST = just record network's responses but don't learn"; init_from=NULL; }; ProgVar @["test_mode"] { name="test_mode"; var_type=T_HardEnum; int_val=0; hard_enum_type=Network::TrainMode; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc="TRAIN = update weights (learn), TEST = just record network's responses but don't learn"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initializes local batch counter and batch field on network"; flags=0; orig_prog_code=; network_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].args["network"]$$; local_ctr_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["batch"]$$; counter=Network::batch; update_after=0; }; PrintExpr @[1] { desc=; flags=OFF; orig_prog_code=; expr { expr="meds"; }; my_mask=NULL; debug_level=NULL; }; If @[2] { desc=; flags=0; orig_prog_code=; cond { expr="meds==true"; }; true_code { name=; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["DA_dip_val"]$$; expr { expr=".022"; }; }; AssignExpr @[1] { desc="this increases tonic DA with meds (optional)"; flags=OFF; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["tonic_DA"]$$; expr { expr=".0265"; }; }; OtherProgramVar @[2] { desc=; flags=0; orig_prog_code=; other_prog=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$$; set_other=1; var_1=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["DA_dip_val"]$; var_2=NULL; var_3=NULL; var_4=NULL; }; OtherProgramVar @[3] { desc=; flags=0; orig_prog_code=; other_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$; set_other=1; var_1=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["tonic_DA"]$; var_2=NULL; var_3=NULL; var_4=NULL; }; }; }; Else @[3] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["DA_dip_val"]$; expr { expr="0"; }; }; AssignExpr @[1] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["tonic_DA"]$; expr { expr=".026"; }; }; OtherProgramVar @[2] { desc=; flags=0; orig_prog_code=; other_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$; set_other=1; var_1=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["DA_dip_val"]$; var_2=NULL; var_3=NULL; var_4=NULL; }; OtherProgramVar @[3] { desc=; flags=0; orig_prog_code=; other_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$; set_other=1; var_1=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["tonic_DA"]$; var_2=NULL; var_3=NULL; var_4=NULL; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initializes local batch counter and batch field on network"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["batch"]$; counter=Network::batch; update_after=0; }; WhileLoop @[1] { desc="the main loop over training runs"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["tstcycle"]$; expr { expr="100"; }; }; ProgramCall @[1] { desc="run the training program -- sets the network and input_data args"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="input_data"; }; }; ProgArg @[2] { arg_type=DataTable; type="DataTable*"; name="TrnTestFreq"; required=1; def_val=; expr { expr="TrnTestFreq"; }; }; ProgArg @[3] { arg_type=bool; type="bool"; name="no_prompts"; required=1; def_val=; expr { expr="true"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"]$; targ_ld_init="*LeabraTrain*"; }; AssignExpr @[2] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["tstcycle"]$; expr { expr="20"; }; }; ProgramCall @[3] { desc=; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="TestEnv"; required=1; def_val=; expr { expr="TestFreq"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"]$$; targ_ld_init="*LeabraTestEpoch*"; }; ProgramCall @[4] { desc="run program that records data from network and possibly other sources about the epoch"; flags=0; orig_prog_code=; prog_args { name="ProgArg_List_0"; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"]$$; targ_ld_init="*Calc_GoNoGo*"; }; AssignExpr @[5] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["tstcycle"]$; expr { expr="30"; }; }; ProgramCall @[6] { desc=; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="TestEnv"; required=1; def_val=; expr { expr="TestFreq"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"]$; targ_ld_init="*LeabraTestEpoch*"; }; ProgramCall @[7] { desc="run program that records data from network and possibly other sources about the epoch"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"]$; targ_ld_init="*Calc_GoNoGo*"; }; NetCounterIncr @[8] { desc="increment the local batch counter and copy to network"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["batch"]$; counter=Network::batch; update_after=0; }; }; test { expr="batch < max_batch"; }; }; DataGroupProg @[2] { desc=; flags=0; orig_prog_code=; src_data_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["TrnTestEpochOutputData"]$$; dest_data_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["out"]$$; group_spec { name="group_spec"; ops { name="ops"; el_typ=DataGroupEl; el_def=0; DataGroupEl @["epoch_GROUP_0"] { col_name="epoch"; name="epoch_GROUP_0"; agg {name="AggregateSpec_83": op=GROUP: rel={name="Relation_83": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; }; DataGroupEl @["cnt_err_MEAN_1"] { col_name="cnt_err"; name="cnt_err_MEAN_1"; agg {name="AggregateSpec_84": op=MEAN: rel={name="Relation_84": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; }; DataGroupEl @["cnt_err_SEM_2"] { col_name="cnt_err"; name="cnt_err_SEM_2"; agg {name="AggregateSpec_84": op=SEM: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; }; DataGroupEl @["avg_sse_MEAN_3"] { col_name="avg_sse"; name="avg_sse_MEAN_3"; agg {name="AggregateSpec_84": op=MEAN: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; }; DataGroupEl @["avg_sse_SEM_4"] { col_name="avg_sse"; name="avg_sse_SEM_4"; agg {name="AggregateSpec_84": op=SEM: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; }; }; append_agg_name=1; }; }; DataGroupProg @[3] { desc=; flags=0; orig_prog_code=; src_data_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["Go_NoGo"]$$; dest_data_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"].vars["Go_NoGo_Group"]$$; group_spec { name="group_spec"; ops { name="ops"; el_typ=DataGroupEl; el_def=0; DataGroupEl @["gn_pos_MEAN_0"] { col_name="gn_pos"; name="gn_pos_MEAN_0"; agg {name="AggregateSpec_88": op=MEAN: rel={name="Relation_88": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; }; DataGroupEl @["gn_pos_SEM_1"] { col_name="gn_pos"; name="gn_pos_SEM_1"; agg {name="AggregateSpec_88": op=SEM: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; }; DataGroupEl @["gn_neg_MEAN_2"] { col_name="gn_neg"; name="gn_neg_MEAN_2"; agg {name="AggregateSpec_89": op=MEAN: rel={name="Relation_89": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; }; DataGroupEl @["gn_neg_SEM_3"] { col_name="gn_neg"; name="gn_neg_SEM_3"; agg {name="AggregateSpec_89": op=SEM: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; }; }; append_agg_name=1; }; }; PrintExpr @[4] { desc=; flags=0; orig_prog_code=; expr { expr="\"done\""; }; my_mask=NULL; debug_level=NULL; }; }; step_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"]$; step_n=1; }; Program @["LeabraTrain"] { name="LeabraTrain"; short_nm="Train"; tags="Leabra, Std"; desc="A complete training run of a Leabra network: iterating over epochs until the network has learned the task"; flags=0; objs { name="objs"; el_typ=RndSeed; el_def=0; RndSeed @["rnd_seed"] { name="rnd_seed"; seed{ -353924042;-925520406;-1547809297;-1891396732;1078323682;-285949548;1095446425;1816796927;1690708030;2070976484;-1208452509;-752012976;-578887477;-825116939;-1671375588;1254117;-713272983;-1283204893;1010563543;1698603238;1344412215;1559575907;-263673408;-1747364602;978955948;1519384053;1863818590;-652087914;765098213;-1830338698;1650269410;828825774;412467910;-1279537601;-903740621;1232073235;406070078;-1843391077;-177838461;1807806631;1618069414;-632478708;-1188806379;-305922754;1501793853;-341231143;380599600;-1987374049;2053993633;-1862753455;-1127949583;1400597778;-57265229;-1296329563;1797260569;-1442587985;440851321;1438078966;-1960189011;1613265734;-320691649;2111839721;1254421702;-1943793214;335200512;1513563457;527495810;1390755725;810024576;-1994790715;1178359241;-1204953041;1414301449;1202490993;-1000463750;-689612024;-1484599645;-1449742638;330319966;-1109861531;1741270771;-1043363893;-1660773830;773247083;997621131;-239342804;843641057;1641443868;-1216902455;-889363088;-77033031;-1705768771;-1391547721;655832774;-538799492;709018490;927558018;-738512213;1389290666;-928204070;1142085889;-527393435;1393799076;-1186555520;-342941006;669018430;-594693152;-2006879238;-1052083900;1647958128;1287511555;-859461319;-1440625070;-1695599103;-497227103;-895007651;-31045750;-2111731070;333063414;1569864581;2099715980;-1456674790;1066691058;2145275637;-2086552896;1863221511;-1561387556;-1201367275;1781263251;1835209499;-1425706044;377856929;-860768247;501282423;518515833;-765719228;-1839383413;401421206;306880696;746316067;-1001353637;-1805827771;766165137;-714960188;-404658157;-1257333023;1577134881;1684677683;-2137191858;546028689;-217973045;1218088319;1629765966;-680916028;60106013;2055154188;67603645;913746990;473468100;-285184525;-946810800;-236741536;1211281073;-1572135917;706620505;-2045632318;2112728166;182002762;-1306727462;1384621281;685763850;-1451696227;-1112190617;-1227150714;1205103298;860191390;1801056006;-124318348;2081292197;-1664049049;-2098702963;-1503901408;1568279840;2048186300;-203930807;-10803477;1998619202;962478122;-1951675570;-1448681031;1304502917;-1438170413;1352021557;-1716439227;-261042491;1788054241;1302833956;-1480567970;855711762;840518113;1034588045;66590826;-1193780068;-415295199;138812726;1573219611;-1711475184;1929033705;1890432856;-82380818;507029075;-845084014;-987249399;-1402398777;93441679;872023618;1389087458;170887016;135206114;709767173;-189882411;-1555524021;739204267;1196692310;1575366963;-1400689765;-12315329;165510543;796725583;2009340944;601566363;211062030;964306286;2033886031;-1800852304;-2138577627;659572815;-947400936;1948723605;1539284051;-1686204598;1586761817;529632170;-506456827;-1920826798;-60147067;-1864053292;-2058961819;176977051;-401738464;2108060361;697324003;-1560819061;1021655562;-2134556432;1009918585;-1853269059;58944092;1867002702;1176143406;1502550159;2105192203;710502904;348424159;693695235;-751207368;1657182033;579044251;-57810893;-230480899;-1498275260;-1870070611;302930203;-1592419400;-671941772;1336993286;1511358679;-632792189;1476631190;-1790456406;-772076448;1281482536;-383189689;-1986965265;1025426333;689779470;641311652;-1764993837;1438142613;417529733;1693449627;681343205;-1397669763;1424714304;-796609077;-1575239409;-1835130807;-38280768;-239964647;-754492563;433516946;1813148103;647223884;1614531883;1284074690;-87997152;70583041;-2004043368;974038262;147373123;1304896165;1670803435;-1817943414;1246603489;-31227494;1535902616;-1319547495;1174442596;-1990930409;509892232;1839000808;1124910;-979745944;2145246586;543962571;-804790948;1781214913;1179529991;-2091755354;2104016381;165859766;-860806119;-2098517618;-1294511735;-1469870043;478003122;-552541046;397835358;304046184;1943056987;960399574;314606531;1254905925;-138987477;829329696;606692089;723144343;-275721746;-1107973923;459536472;952112150;52540429;-1375600767;-115610864;-1437209887;1590568946;1448857411;-1225713553;-634652313;-1651775013;-112761595;-647687481;256330942;1885664865;-1672571572;-1240881357;983511235;-348415650;555829281;-962453642;1493108635;-991597771;727528386;1053179647;686183185;-691412948;-1142449405;-1118129698;-352655034;2025256628;-1524026395;358161056;1439113886;1869660474;2072105159;1885033887;875321048;-807412549;2037943836;-1888970762;-1522431798;1652949103;1772270;939962223;1317969749;483709359;-738827625;-1660806671;1264339309;-1331182293;718453693;-1983432670;25314866;1398043981;1479275664;724572106;-1522893240;699363017;671041509;-126620686;781652143;-2108670554;975247184;129500205;-1626293153;418584400;1385301040;-2127502858;1054915302;922276961;-1803897623;1437082972;148931671;-104347910;-233061659;-1131742105;1185587843;2077733109;276260336;1849207133;1082199802;-791921226;-1181927655;-1393479080;-1483667148;-1029666303;1363117694;1317210320;-2094967509;853052388;-175622484;382352324;-1977517554;-807824265;1886758784;1435902114;-1004069619;89978437;-1252321287;-660419896;-967989543;1390641093;-1585623528;-537805817;-1944497318;989854591;-1190252061;-462284658;1476535915;-1538399331;-823925113;-1813866527;-2031916707;-524981430;2029807261;1824651613;1484627742;-1852809202;1638945424;1421291018;1513492269;2141620787;1543981458;1011135448;-1774088686;-11297237;-1363619932;-1953250213;265230843;-1418095386;-102644780;1992381620;-41006517;-1763977141;-512071759;1688677663;283892924;1062384659;780417127;455762316;549480998;-742246167;-1032081346;2043162366;169477001;-857294852;-344518517;1904889753;491897066;1340364869;-768657208;1670581516;-765780713;-66179365;1888621872;-682584242;-1294014373;-1028108776;-79673949;-318891491;-619946540;1325012690;-1566118337;-1056594670;-603505993;942702343;-1941053753;978539198;89740540;-1919064717;-1938194275;169727940;-1936062882;-491798441;797955888;-533161987;261941060;596026339;1359488415;61499239;-345903947;-2041984031;-798036573;-1739693515;-318951223;-1937351735;2125388847;-65831361;-1511855162;84863599;929097447;2031991360;892225219;-227194866;-533765055;1697112619;669693620;1246522151;730308130;1796183951;-1574712532;370985293;506503817;770339638;-2086577032;1216137293;-360729560;-319153628;-2118372719;1280680238;760463547;-582213896;-931557831;-2136463083;-1812560057;495603054;822242460;1784174531;2048881602;1907427624;618565735;233249246;-2045311790;441989197;-1593152097;1494304304;-105386859;-1287217297;-567722685;1691118723;-96050290;-1645822490;686027066;781989929;-758178955;-1985872425;-896326573;1756112347;1830984526;653102968;164156582;781368781;-1810720463;330808944;-1854401406;920164563;-1090373485;1142746250;1976350765;-1584908365;-765283283;681555583;287701365;1152256644;-1578215979;2077814576;720279987;1481142526;1141247483;-306950141;1995674210;203734642;-1048041634;-2024583402;-1833178806;888312783;326572563;628520680;1303843826;-1299387318;-1308376364;-627415333;-807653978;-1311878776; }; mti=624; is_gauss_double_cached=0; cached_gauss_double=0; }; }; types { name="types"; el_typ=DynEnumType; el_def=0; DynEnumType @["RndInitType"] { name="RndInitType"; desc=; enums { name=; el_typ=DynEnumItem; el_def=0; DynEnumItem @["OLD_SEED"] { name="OLD_SEED"; value=0; desc="use stored random seed value (recreates same sequence every time)"; }; DynEnumItem @["NEW_SEED"] { name="NEW_SEED"; value=1; desc="generate new random seed (new sequence of random numbers)"; }; }; bits=0; }; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to train"; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["Train_Freq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc="datatable with training patterns"; init_from=NULL; }; ProgVar @["TrnTestFreq"] { name="TrnTestFreq"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns"; init_from=NULL; }; ProgVar @["no_prompts"] { name="no_prompts"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="If train is called by other programs (e.g., Batch), they should set this to true -- otherwise it is reset to false in Init"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["max_epoch"] { name="max_epoch"; var_type=T_Int; int_val=10; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="maximum number of epochs to run"; init_from=NULL; }; ProgVar @["train_mode"] { name="train_mode"; var_type=T_HardEnum; int_val=1; hard_enum_type=Network::TrainMode; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="TRAIN = update weights (learn), TEST = just record network's responses but don't learn"; init_from=NULL; }; ProgVar @["test_mode"] { name="test_mode"; var_type=T_HardEnum; int_val=0; hard_enum_type=Network::TrainMode; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="TRAIN = update weights (learn), TEST = just record network's responses but don't learn"; init_from=NULL; }; ProgVar @["rnd_init"] { name="rnd_init"; var_type=T_DynEnum; dyn_enum_val { enum_type=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].types["RndInitType"]$$; value=0; }; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="how to initialize the random numbers when the Init button is pressed"; init_from=NULL; }; ProgVar @["epoch"] { name="epoch"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="current epoch -- local copy, which is used to update network's epoch counter"; init_from=NULL; }; ProgVar @["err_stopcrit"] { name="err_stopcrit"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc="stopping criterion -- when error measure (count of trials with a non-zero error by defult) goes <= this value, stop training (set to -1 to disable stopping criterion, and always train to max_epoch epochs)"; init_from=NULL; }; ProgVar @["rnd_seed"] { name="rnd_seed"; var_type=T_Object; object_type=RndSeed; object_val=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].objs["rnd_seed"]$$; objs_ptr=1; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="random seed that is used at start of training -- if OldSeed is called"; init_from=NULL; }; ProgVar @["TestFreq"] { name="TestFreq"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["train_timer"] { name="train_timer"; var_type=T_Object; object_type=TimeUsed; object_val=.projects["BG_PS_inhib_e7"].networks["BGNet"].train_time$$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="records time used to train network (object lives on network -- this is a pointer to it)"; init_from=NULL; }; ProgVar @["TrnTestFreq"] { name="TrnTestFreq"; var_type=T_Object; object_type=DataTable; object_val=.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TrnTestFreq"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["j"] { name="j"; var_type=T_Int; int_val=18; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["i"] { name="i"; var_type=T_Int; int_val=4; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["num_intact_snc_units"] { name="num_intact_snc_units"; var_type=T_Int; int_val=4; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["active_da_units"] { name="active_da_units"; var_type=T_Int; int_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["D2abs"] { name="D2abs"; var_type=T_Real; real_val=0.5; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["snc_size"] { name="snc_size"; var_type=T_Int; int_val=4; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["med_expression"] { name="med_expression"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="da manip during expression only?"; init_from=NULL; }; ProgVar @["PD_expression"] { name="PD_expression"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="da manip during expression only?"; init_from=NULL; }; ProgVar @["learning"] { name="learning"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="da manip during learning only?"; init_from=NULL; }; ProgVar @["SNc"] { name="SNc"; var_type=T_Object; object_type=LeabraLayer; object_val=.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["SNc"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["D2"] { name="D2"; var_type=T_Object; object_type=LeabraConSpec; object_val=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["SNc_Inhib_D2_"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["Striatum"] { name="Striatum"; var_type=T_Object; object_type=LeabraLayer; object_val=.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Striatum_Inhib"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["Go"] { name="Go"; var_type=T_Object; object_type=LeabraLayer; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Go"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["Train_Freq"] { name="Train_Freq"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["Train_Freq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns"; init_from=NULL; }; ProgVar @["str_unit"] { name="str_unit"; var_type=T_Object; object_type=UnitSpec; object_val=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["LearnBiasUnitSpec"].children["matrisom_unitspec"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["DA_dip_val"] { name="DA_dip_val"; var_type=T_Real; real_val=0.024; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["tonic_DA"] { name="tonic_DA"; var_type=T_Real; real_val=0.025; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["no_prompts"]$$; expr { expr="false"; }; }; MethodCall @[1] { desc="check network to make sure it is ready to be run"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$$; method=taBase::CheckConfig; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="quiet"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; AssignExpr @[2] { desc="get our pointer to the network training time object"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["train_timer"]$$; expr { expr="network.train_time"; }; }; NetCounterInit @[3] { desc="initialize epoch counter "; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$; local_ctr_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["epoch"]$$; counter=Network::epoch; update_after=0; }; If @[4] { desc="initialize random seed (either old or new)"; flags=0; orig_prog_code=; cond { expr="rnd_init == OLD_SEED"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="restore previous random seed (all runs produce same results)"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["rnd_seed"]$$; method=RndSeed::OldSeed; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; Else @[5] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="new random numbers each time"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["rnd_seed"]$; method=RndSeed::NewSeed; meth_args { name="meth_args"; el_typ=ProgArg; el_def=0; }; }; }; }; IfGuiPrompt @[6] { desc="don't initialize weights without checking"; flags=0; orig_prog_code=; prompt="Do you want to Initialize Network Weights"; yes_label="Yes"; no_label="No"; yes_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="initialize network weights: could also load pre-set weights or something else here"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$; method=Network::Init_Weights; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; PrintExpr @[1] { desc=; flags=0; orig_prog_code=; expr { expr="network.name << \" Weights Initialized\""; }; my_mask=NULL; debug_level=NULL; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc="get our pointer to the network training time object"; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["train_timer"]$; expr { expr="network.train_time"; }; }; MethodCall @[1] { desc="start timer to keep track of how long it takes to run entire training run"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["train_timer"]$; method=TimeUsed::StartTimer; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="reset_used"; required=0; def_val="true"; expr { expr="true"; }; }; }; }; NetCounterInit @[2] { desc="initialize epoch counter (both our local copy and network's epoch counter)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["epoch"]$; counter=Network::epoch; update_after=0; }; MemberAssign @[3] { desc=; flags=OFF; orig_prog_code=; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["str_unit"]$$; path="noise.mean"; expr { expr=".001"; }; update_after=0; }; MemberAssign @[4] { desc="set network's training mode to our local value"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$; path="train_mode"; expr { expr="train_mode"; }; update_after=0; }; If @[5] { desc=; flags=0; orig_prog_code=; cond { expr="no_prompts"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="initialize network weights: could also load pre-set weights or something else here"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$; method=Network::Init_Weights; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; PrintExpr @[1] { desc=; flags=0; orig_prog_code=; expr { expr="network.name << \" Weights Initialized\""; }; my_mask=NULL; debug_level=NULL; }; }; }; AssignExpr @[6] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["snc_size"]$$; expr { expr="SNc.units.size"; }; }; PrintExpr @[7] { desc=; flags=0; orig_prog_code=; expr { expr="\" TRAIN\""; }; my_mask=NULL; debug_level=NULL; }; If @[8] { desc="reset tonic DA back to normal levels (apply elevated tonic med val at test)"; flags=0; orig_prog_code=; cond { expr="med_expression"; }; true_code { name="ProgEl_List_231"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["tonic_DA"]$$; expr { expr="0.026"; }; }; OtherProgramVar @[1] { desc=; flags=0; orig_prog_code=; other_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$; set_other=1; var_1=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["tonic_DA"]$; var_2=NULL; var_3=NULL; var_4=NULL; }; }; }; If @[9] { desc="if da manip during expression only then set all da cons intact; else lesion da units for learning"; flags=0; orig_prog_code=; cond { expr="PD_expression "; }; true_code { name=; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc="for learning set active da units to total number of units"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["active_da_units"]$$; expr { expr="SNc.units.size"; }; }; }; }; Else @[10] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["active_da_units"]$; expr { expr="num_intact_snc_units"; }; }; }; }; UserScript @[11] { desc="zero out weights for non-intact snc units"; flags=0; orig_prog_code=; script { expr="D2.wt_scale.abs=D2abs; "; }; }; OtherProgramVar @[12] { desc=; flags=0; orig_prog_code=; other_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$; set_other=1; var_1=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["num_intact_snc_units"]$; var_2=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["active_da_units"]$; var_3=NULL; var_4=NULL; }; OtherProgramVar @[13] { desc=; flags=0; orig_prog_code=; other_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"]$; set_other=1; var_1=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["num_intact_snc_units"]$; var_2=NULL; var_3=NULL; var_4=NULL; }; MemberAssign @[14] { desc="set network's training mode to our local value"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$; path="train_mode"; expr { expr="test_mode"; }; update_after=0; }; ProgramCall @[15] { desc=; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="TrnTestFreq"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"]$$; targ_ld_init="*LeabraTrnTestEpoch*"; }; WhileLoop @[16] { desc="main loop over epochs of training"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc="set network's training mode to our local value"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$; path="train_mode"; expr { expr="train_mode"; }; update_after=0; }; ProgramCall @[1] { desc="run the epoch program (one epoch), passes our network and input_data"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="Train_Freq"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"]$$; targ_ld_init="*LeabraEpoch*"; }; NetCounterIncr @[2] { desc="increment the epoch counter (locally and on network)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["epoch"]$; counter=Network::epoch; update_after=0; }; MemberAssign @[3] { desc="set network's training mode to our local value"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$; path="train_mode"; expr { expr="test_mode"; }; update_after=0; }; ProgramCall @[4] { desc=; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="TrnTestFreq"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"]$; targ_ld_init="*LeabraTrnTestEpoch*"; }; MemberAssign @[5] { desc="set network's training mode to our local value"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$; path="train_mode"; expr { expr="train_mode"; }; update_after=0; }; IfBreak @[6] { desc="stop if errors go below stopping criterion (note: could use sse or avg_sse here instead)"; flags=OFF; orig_prog_code=; cond { expr="network.cnt_err <= err_stopcrit"; }; }; MemberAssign @[7] { desc="set network's training mode to our local value"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].args["network"]$; path="train_mode"; expr { expr="test_mode"; }; update_after=0; }; }; test { expr="epoch < max_epoch"; }; }; PrintExpr @[17] { desc=; flags=0; orig_prog_code=; expr { expr="\" TEST\""; }; my_mask=NULL; debug_level=NULL; }; If @[18] { desc="if da manip during learning only then set all da cons intact during expression "; flags=0; orig_prog_code=; cond { expr="learning"; }; true_code { name=; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc="for expression set active da units to total number of units (no more da depletion)"; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["active_da_units"]$; expr { expr="SNc.units.size"; }; }; }; }; Else @[19] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["active_da_units"]$; expr { expr="num_intact_snc_units"; }; }; }; }; OtherProgramVar @[20] { desc=; flags=0; orig_prog_code=; other_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$; set_other=1; var_1=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["num_intact_snc_units"]$; var_2=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["active_da_units"]$; var_3=NULL; var_4=NULL; }; UserScript @[21] { desc="zero out weights for non-intact snc units"; flags=0; orig_prog_code=; script { expr="D2.wt_scale.abs=0.5; "; }; }; If @[22] { desc="if da manip during expression only then set all da cons intact; else lesion da units for learning"; flags=0; orig_prog_code=; cond { expr="med_expression"; }; true_code { name=; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc=; flags=OFF; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["tonic_DA"]$; expr { expr=".028"; }; }; OtherProgramVar @[1] { desc=; flags=0; orig_prog_code=; other_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$; set_other=1; var_1=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["tonic_DA"]$; var_2=NULL; var_3=NULL; var_4=NULL; }; UserScript @[2] { desc="zero out weights for non-intact snc units"; flags=0; orig_prog_code=; script { expr="D2.wt_scale.rel=3; "; }; }; }; }; MethodCall @[23] { desc="stop the timer -- time elapsed is now recorded in this object, and can be displayed or recorded to a data table"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"].vars["train_timer"]$; method=TimeUsed::EndTimer; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; step_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"]$; step_n=1; }; Program @["LeabraEpoch"] { name="LeabraEpoch"; short_nm="Epoch"; tags="Leabra, Std"; desc="iterates over all of the items in a data table and calls LeabraTrial process on them"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to operate on"; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["Train_Freq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="table of patterns to present to the network, one row at a time"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["data_loop_order"] { name="data_loop_order"; var_type=T_HardEnum; int_val=1; hard_enum_type=DataLoop::Order; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="controls the order in which events (rows of the input data datatable) are presented to the network (SEQUENTIAL, PERMUTED, RANDOM)"; init_from=NULL; }; ProgVar @["trial"] { name="trial"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="current trial (event) within the epoch -- increments automatically"; init_from=NULL; }; ProgVar @["trial_mon_data"] { name="trial_mon_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrialOutputData"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="trial-level output data -- we reset it every epoch by default, so it just contains last epoch of data"; init_from=NULL; }; ProgVar @["epoch_timer"] { name="epoch_timer"; var_type=T_Object; object_type=TimeUsed; object_val=.projects["BG_PS_inhib_e7"].networks["BGNet"].epoch_time$$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="timer to record time required to perform one epoch of processing (object is on network -- this is a pointer to it)"; init_from=NULL; }; ProgVar @["data_loop_index"] { name="data_loop_index"; var_type=T_Int; int_val=2; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="index counter for the looping over items in the input_data datatable (not always the same as trial counter, depending on distributed memory computation)"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize trial counter (local variable and in the network)"; flags=0; orig_prog_code=; network_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].args["network"]$$; local_ctr_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].vars["trial"]$$; counter=Network::trial; update_after=0; }; AssignExpr @[1] { desc="get pointer to epoch timer object on network"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].vars["epoch_timer"]$$; expr { expr="network.epoch_time"; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize trial counter (local variable and in the network)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].vars["trial"]$; counter=Network::trial; update_after=0; }; AssignExpr @[1] { desc="get pointer to epoch timer object on network"; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].vars["epoch_timer"]$; expr { expr="network.epoch_time"; }; }; MethodCall @[2] { desc="start the epoch timer to record computation time per epoch"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].vars["epoch_timer"]$; method=TimeUsed::StartTimer; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="reset_used"; required=0; def_val="true"; expr { expr="true"; }; }; }; }; MethodCall @[3] { desc="reset trial-level monitor data every epoch, so it reflects only the most recent epoch's worth of data (turn flags OFF to accumulate trial data across entire training run)"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].vars["trial_mon_data"]$$; method=DataTable::ResetData; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; NetDataLoop @[4] { desc="iterates over the events/rows of input_data, according to data_loop_order variable"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ProgramCall @[0] { desc="run the trial program, passing network and input_data"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="input_data"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"]$$; targ_ld_init="*LeabraTrial*"; }; If @[1] { desc="test if it is time to update the weight values from delta weights (dWt) computed over trials"; flags=0; orig_prog_code=; cond { expr="network.Compute_Weights_Test(trial+1)"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="update the weight values based on changes computed by trial program"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].args["network"]$; method=Network::Compute_Weights; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; }; data_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].args["input_data"]$$; index_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].vars["data_loop_index"]$$; order_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].vars["data_loop_order"]$$; order=PERMUTED; update_after=0; dmem_nprocs=1; dmem_this_proc=0; grouped=0; group_col 9 0="Group"; group_index_var=NULL; group_order_var=NULL; group_order=PERMUTED; group_idx_list{ }; }; If @[5] { desc="if full batch mode, update only at end of epoch"; flags=0; orig_prog_code=; cond { expr="network.wt_update == Network::BATCH"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="final update of weights based on accumulated changes"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].args["network"]$; method=Network::Compute_Weights; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; MethodCall @[6] { desc="network accumulates some core statistics over the epoch -- this finalizes that process and computes summary stats"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].args["network"]$; method=LeabraNetwork::Compute_EpochStats; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; ProgramCall @[7] { desc="run program that records data from network and possibly other sources about the epoch"; flags=OFF; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=Network; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpochMonitor"]$$; targ_ld_init="*LeabraEpochMonitor*"; }; MethodCall @[8] { desc="done with the computation in the epoch -- record time it took"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpoch"].vars["epoch_timer"]$; method=TimeUsed::EndTimer; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; step_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"]$; step_n=1; }; Program @["LeabraTrnTestEpoch"] { name="LeabraTrnTestEpoch"; short_nm="TrTstp"; tags="Leabra, Std"; desc="iterates over all of the items in a data table and calls LeabraTrial process on them"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to operate on"; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="table of patterns to present to the network, one row at a time"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["data_loop_order"] { name="data_loop_order"; var_type=T_HardEnum; int_val=1; hard_enum_type=DataLoop::Order; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="controls the order in which events (rows of the input data datatable) are presented to the network (SEQUENTIAL, PERMUTED, RANDOM)"; init_from=NULL; }; ProgVar @["trial"] { name="trial"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="current trial (event) within the epoch -- increments automatically"; init_from=NULL; }; ProgVar @["trial_mon_data"] { name="trial_mon_data"; var_type=T_Object; object_type=DataTable; object_val=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestTrialOutputData"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="trial-level output data -- we reset it every epoch by default, so it just contains last epoch of data"; init_from=NULL; }; ProgVar @["epoch_timer"] { name="epoch_timer"; var_type=T_Object; object_type=TimeUsed; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].epoch_time$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="timer to record time required to perform one epoch of processing (object is on network -- this is a pointer to it)"; init_from=NULL; }; ProgVar @["data_loop_index"] { name="data_loop_index"; var_type=T_Int; int_val=4; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="index counter for the looping over items in the input_data datatable (not always the same as trial counter, depending on distributed memory computation)"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize trial counter (local variable and in the network)"; flags=0; orig_prog_code=; network_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].args["network"]$$; local_ctr_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].vars["trial"]$$; counter=Network::trial; update_after=0; }; AssignExpr @[1] { desc="get pointer to epoch timer object on network"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].vars["epoch_timer"]$$; expr { expr="network.epoch_time"; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize trial counter (local variable and in the network)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].vars["trial"]$; counter=Network::trial; update_after=0; }; AssignExpr @[1] { desc="get pointer to epoch timer object on network"; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].vars["epoch_timer"]$; expr { expr="network.epoch_time"; }; }; MethodCall @[2] { desc="start the epoch timer to record computation time per epoch"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].vars["epoch_timer"]$; method=TimeUsed::StartTimer; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="reset_used"; required=0; def_val="true"; expr { expr="true"; }; }; }; }; MethodCall @[3] { desc="reset trial-level monitor data every epoch, so it reflects only the most recent epoch's worth of data (turn flags OFF to accumulate trial data across entire training run)"; flags=OFF; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].vars["trial_mon_data"]$$; method=DataTable::ResetData; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; NetDataLoop @[4] { desc="iterates over the events/rows of input_data, according to data_loop_order variable"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ProgramCall @[0] { desc="run the trial program, passing network and input_data"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="input_data"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"]$$; targ_ld_init="*LeabraTrnTestTrial*"; }; If @[1] { desc="test if it is time to update the weight values from delta weights (dWt) computed over trials"; flags=0; orig_prog_code=; cond { expr="network.Compute_Weights_Test(trial+1)"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="update the weight values based on changes computed by trial program"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].args["network"]$; method=Network::Compute_Weights; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; }; data_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].args["input_data"]$$; index_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].vars["data_loop_index"]$$; order_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].vars["data_loop_order"]$$; order=PERMUTED; update_after=0; dmem_nprocs=1; dmem_this_proc=0; grouped=0; group_col 9 0="Group"; group_index_var=NULL; group_order_var=NULL; group_order=PERMUTED; group_idx_list{ }; }; If @[5] { desc="if full batch mode, update only at end of epoch"; flags=0; orig_prog_code=; cond { expr="network.wt_update == Network::BATCH"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="final update of weights based on accumulated changes"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].args["network"]$; method=Network::Compute_Weights; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; MethodCall @[6] { desc="network accumulates some core statistics over the epoch -- this finalizes that process and computes summary stats"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].args["network"]$; method=LeabraNetwork::Compute_EpochStats; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; ProgramCall @[7] { desc="run program that records data from network and possibly other sources about the epoch"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=Network; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpochMonitor"]$$; targ_ld_init="*LeabraTrnTestEpochMonitor*"; }; MethodCall @[8] { desc="done with the computation in the epoch -- record time it took"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpoch"].vars["epoch_timer"]$; method=TimeUsed::EndTimer; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; step_prog=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraCycle"]$$; step_n=1; }; Program @["LeabraTestEpoch"] { name="LeabraTestEpoch"; short_nm="Epoch"; tags=; desc="iterates over all of the items in a data table and calls LeabraTrial process on them"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to operate on"; init_from=NULL; }; ProgVar @["TestEnv"] { name="TestEnv"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["data_loop_order"] { name="data_loop_order"; var_type=T_HardEnum; int_val=1; hard_enum_type=DataLoop::Order; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="controls the order in which events (rows of the input data datatable) are presented to the network (SEQUENTIAL, PERMUTED, RANDOM)"; init_from=NULL; }; ProgVar @["trial"] { name="trial"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="current trial (event) within the epoch -- increments automatically"; init_from=NULL; }; ProgVar @["trial_mon_data"] { name="trial_mon_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrialOutputData"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="trial-level output data -- we reset it every epoch by default, so it just contains last epoch of data"; init_from=NULL; }; ProgVar @["epoch_timer"] { name="epoch_timer"; var_type=T_Object; object_type=TimeUsed; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].epoch_time$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="timer to record time required to perform one epoch of processing (object is on network -- this is a pointer to it)"; init_from=NULL; }; ProgVar @["data_loop_index"] { name="data_loop_index"; var_type=T_Int; int_val=4; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="index counter for the looping over items in the input_data datatable (not always the same as trial counter, depending on distributed memory computation)"; init_from=NULL; }; ProgVar @["epoch"] { name="epoch"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["max_epoch"] { name="max_epoch"; var_type=T_Int; int_val=10; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["final_rf"] { name="final_rf"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["acc_rf"] { name="acc_rf"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["init_rf"] { name="init_rf"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["str_unit"] { name="str_unit"; var_type=T_Object; object_type=UnitSpec; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["LearnBiasUnitSpec"].children["matrisom_unitspec"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["num_intact_snc_units"] { name="num_intact_snc_units"; var_type=T_Int; int_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["active_da_units"] { name="active_da_units"; var_type=T_Int; int_val=4; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["snc_size"] { name="snc_size"; var_type=T_Int; int_val=4; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["k"] { name="k"; var_type=T_Real; real_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["SNc"] { name="SNc"; var_type=T_Object; object_type=LeabraLayer; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["SNc"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize trial counter (local variable and in the network)"; flags=0; orig_prog_code=; network_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].args["network"]$$; local_ctr_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["trial"]$$; counter=Network::trial; update_after=0; }; AssignExpr @[1] { desc="get pointer to epoch timer object on network"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["epoch_timer"]$$; expr { expr="network.epoch_time"; }; }; AssignExpr @[2] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["epoch"]$$; expr { expr=".programs.LeabraTrain.epoch.int_val"; }; }; AssignExpr @[3] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["max_epoch"]$$; expr { expr=".programs.LeabraTrain.max_epoch.int_val"; }; }; AssignExpr @[4] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["active_da_units"]$$; expr { expr=".programs.LeabraTrain.num_intact_snc_units.int_val"; }; }; OtherProgramVar @[5] { desc=; flags=0; orig_prog_code=; other_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$; set_other=1; var_1=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["num_intact_snc_units"]$$; var_2=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["active_da_units"]$; var_3=NULL; var_4=NULL; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize trial counter (local variable and in the network)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["trial"]$; counter=Network::trial; update_after=0; }; AssignExpr @[1] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["snc_size"]$$; expr { expr="SNc.units.size"; }; }; AssignExpr @[2] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["k"]$$; expr { expr="(float)num_intact_snc_units/ snc_size"; }; }; MemberAssign @[3] { desc="turn off noise in striatum to get reliable measure of learned activity"; flags=0; orig_prog_code=; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["str_unit"]$$; path="noise.mean"; expr { expr="0.00"; }; update_after=0; }; AssignExpr @[4] { desc="get pointer to epoch timer object on network"; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["epoch_timer"]$; expr { expr="network.epoch_time"; }; }; MethodCall @[5] { desc="start the epoch timer to record computation time per epoch"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["epoch_timer"]$; method=TimeUsed::StartTimer; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="reset_used"; required=0; def_val="true"; expr { expr="true"; }; }; }; }; MethodCall @[6] { desc="reset trial-level monitor data every epoch, so it reflects only the most recent epoch's worth of data (turn flags OFF to accumulate trial data across entire training run)"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["trial_mon_data"]$$; method=DataTable::ResetData; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; AssignExpr @[7] { desc="call progs w/ true to wipe datatable and initialize"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["init_rf"]$$; expr { expr="true"; }; }; ProgramCall @[8] { desc="run program that records data from network and possibly other sources about the epoch"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=bool; type="bool"; name="final_rf"; required=1; def_val=; expr { expr="final_rf"; }; }; ProgArg @[2] { arg_type=bool; type="bool"; name="init_rf"; required=1; def_val=; expr { expr="init_rf"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"]$$; targ_ld_init="*ActBasedRField*"; }; ProgramCall @[9] { desc="run program that records data from network and possibly other sources about the epoch"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=bool; type="bool"; name="final_rf"; required=1; def_val=; expr { expr="final_rf"; }; }; ProgArg @[2] { arg_type=bool; type="bool"; name="init_rf"; required=1; def_val=; expr { expr="init_rf"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"]$$; targ_ld_init="*ActBasedRField*"; }; AssignExpr @[10] { desc="permit accumulation of RFs "; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["init_rf"]$; expr { expr="false"; }; }; NetDataLoop @[11] { desc="iterates over the events/rows of input_data, according to data_loop_order variable"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ProgramCall @[0] { desc="run the trial program, passing network and input_data"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="TestWP"; required=1; def_val=; expr { expr="TestEnv"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"]$$; targ_ld_init="*LeabraTestTrial*"; }; If @[1] { desc="test if it is time to update the weight values from delta weights (dWt) computed over trials"; flags=0; orig_prog_code=; cond { expr="network.Compute_Weights_Test(trial+1)"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="update the weight values based on changes computed by trial program"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].args["network"]$; method=Network::Compute_Weights; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; }; data_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].args["TestEnv"]$$; index_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["data_loop_index"]$$; order_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["data_loop_order"]$$; order=PERMUTED; update_after=0; dmem_nprocs=1; dmem_this_proc=0; grouped=0; group_col 9 0="Group"; group_index_var=NULL; group_order_var=NULL; group_order=PERMUTED; group_idx_list{ }; }; If @[12] { desc="if full batch mode, update only at end of epoch"; flags=0; orig_prog_code=; cond { expr="network.wt_update == Network::BATCH"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="final update of weights based on accumulated changes"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].args["network"]$; method=Network::Compute_Weights; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; MethodCall @[13] { desc="network accumulates some core statistics over the epoch -- this finalizes that process and computes summary stats"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].args["network"]$; method=LeabraNetwork::Compute_EpochStats; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; ProgramCall @[14] { desc="run program that records data from network and possibly other sources about the epoch"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=Network; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpochMonitor"]$; targ_ld_init="*LeabraEpochMonitor*"; }; ProgramCall @[15] { desc="run program that records data from network and possibly other sources about the epoch"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=bool; type="bool"; name="final_rf"; required=1; def_val=; expr { expr="final_rf"; }; }; ProgArg @[2] { arg_type=bool; type="bool"; name="init_rf"; required=1; def_val=; expr { expr="init_rf"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"]$; targ_ld_init="*ActBasedRField*"; }; ProgramCall @[16] { desc="run program that records data from network and possibly other sources about the epoch"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=bool; type="bool"; name="final_rf"; required=1; def_val=; expr { expr="final_rf"; }; }; ProgArg @[2] { arg_type=bool; type="bool"; name="init_rf"; required=1; def_val=; expr { expr="init_rf"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"]$; targ_ld_init="*ActBasedRField*"; }; ProgramCall @[17] { desc="run program that records data from network and possibly other sources about the epoch"; flags=OFF; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"]$; targ_ld_init="*Calc_GoNoGo*"; }; MethodCall @[18] { desc="done with the computation in the epoch -- record time it took"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestEpoch"].vars["epoch_timer"]$; method=TimeUsed::EndTimer; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; step_prog=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"]$$; step_n=1; }; Program @["LeabraTrial"] { name="LeabraTrial"; short_nm="Trial"; tags="Leabra, Std"; desc="Leabra processing of a single input/toutput event or external information: typically runs a minus and a plus phase, then learns (unless testing)"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to operate on -- typically set by higher-level calling programs"; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["Train_Freq"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable containing training input/output patterns"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["phase_no"] { name="phase_no"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="local phase counting variable (0 is typically minus phase, 1 is typically plus -- depends on network settings)"; init_from=NULL; }; ProgVar @["update_net_view"] { name="update_net_view"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="determines whether to update any network view displays after trial is completed"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize the local phase_no counter, and corresponding network one"; flags=0; orig_prog_code=; network_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"].args["network"]$$; local_ctr_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"].vars["phase_no"]$$; counter=LeabraNetwork::phase_no; update_after=0; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize the local phase_no counter, and corresponding network one"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"].vars["phase_no"]$; counter=LeabraNetwork::phase_no; update_after=0; }; MethodCall @[1] { desc="initializes various counters at start of trial"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"].args["network"]$; method=LeabraNetwork::Trial_Init; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; WhileLoop @[2] { desc="loop over phases of settling in the network"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; UserScript @[0] { desc=; flags=OFF; orig_prog_code=; script { expr=".programs.LeabraSettle.Init(); "; }; }; ProgramCall @[1] { desc="run the settle program (which iterates over cyles of network activation updating) for each phase"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="input_data"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"]$; targ_ld_init="*LeabraSettle*"; }; NetCounterIncr @[2] { desc="increment the phase number (also on network)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"].vars["phase_no"]$; counter=LeabraNetwork::phase_no; update_after=0; }; MethodCall @[3] { desc="increments other phase state information to prepare for the next phase of settling"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"].args["network"]$; method=LeabraNetwork::Trial_UpdatePhase; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; test { expr="phase_no < network.phase_max"; }; }; MethodCall @[3] { desc="after the trial is over, do final computations: Compute_dWt (learn weights), compute stats"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"].args["network"]$; method=LeabraNetwork::Trial_Final; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; ProgramCall @[4] { desc="records data about the trial-level processing to a datatable for graphing/processing"; flags=OFF; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=Network; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrialMonitor"]$$; targ_ld_init="*LeabraTrialMonitor*"; }; NetUpdateView @[5] { desc="update the network view(s) (only if update_net_view is true)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"].args["network"]$; update_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrial"].vars["update_net_view"]$$; }; }; step_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"]$; step_n=1; }; Program @["LeabraTrnTestTrial"] { name="LeabraTrnTestTrial"; short_nm="TrTsTr"; tags="Leabra, Std"; desc="Leabra processing of a single input/toutput event or external information: typically runs a minus and a plus phase, then learns (unless testing)"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to operate on -- typically set by higher-level calling programs"; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable containing training input/output patterns"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["phase_no"] { name="phase_no"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="local phase counting variable (0 is typically minus phase, 1 is typically plus -- depends on network settings)"; init_from=NULL; }; ProgVar @["update_net_view"] { name="update_net_view"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="determines whether to update any network view displays after trial is completed"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize the local phase_no counter, and corresponding network one"; flags=0; orig_prog_code=; network_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"].args["network"]$$; local_ctr_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"].vars["phase_no"]$$; counter=LeabraNetwork::phase_no; update_after=0; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize the local phase_no counter, and corresponding network one"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"].vars["phase_no"]$; counter=LeabraNetwork::phase_no; update_after=0; }; MethodCall @[1] { desc="initializes various counters at start of trial"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"].args["network"]$; method=LeabraNetwork::Trial_Init; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; WhileLoop @[2] { desc="loop over phases of settling in the network"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; UserScript @[0] { desc=; flags=OFF; orig_prog_code=; script { expr=".programs.LeabraSettle.Init(); "; }; }; ProgramCall @[1] { desc="run the settle program (which iterates over cyles of network activation updating) for each phase"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="input_data"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"]$$; targ_ld_init="*LeabraTrnTestSettle*"; }; NetCounterIncr @[2] { desc="increment the phase number (also on network)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"].vars["phase_no"]$; counter=LeabraNetwork::phase_no; update_after=0; }; MethodCall @[3] { desc="increments other phase state information to prepare for the next phase of settling"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"].args["network"]$; method=LeabraNetwork::Trial_UpdatePhase; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; test { expr="phase_no < network.phase_max"; }; }; MethodCall @[3] { desc="after the trial is over, do final computations: Compute_dWt (learn weights), compute stats"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"].args["network"]$; method=LeabraNetwork::Trial_Final; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; ProgramCall @[4] { desc="records data about the trial-level processing to a datatable for graphing/processing"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=Network; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrialMonitor"]$$; targ_ld_init="*LeabraTrnTestTrialMonitor*"; }; NetUpdateView @[5] { desc="update the network view(s) (only if update_net_view is true)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"].args["network"]$; update_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrial"].vars["update_net_view"]$$; }; }; step_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraCycle"]$; step_n=1; }; Program @["LeabraTestTrial"] { name="LeabraTestTrial"; short_nm="TTrial"; tags=; desc="Leabra processing of a single input/toutput event or external information: typically runs a minus and a plus phase, then learns (unless testing)"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to operate on -- typically set by higher-level calling programs"; init_from=NULL; }; ProgVar @["TestWP"] { name="TestWP"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable containing training input/output patterns"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["phase_no"] { name="phase_no"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="local phase counting variable (0 is typically minus phase, 1 is typically plus -- depends on network settings)"; init_from=NULL; }; ProgVar @["update_net_view"] { name="update_net_view"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="determines whether to update any network view displays after trial is completed"; init_from=NULL; }; ProgVar @["acc_rf"] { name="acc_rf"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["init_rf"] { name="init_rf"; var_type=T_Bool; bool_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize the local phase_no counter, and corresponding network one"; flags=0; orig_prog_code=; network_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"].args["network"]$$; local_ctr_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"].vars["phase_no"]$$; counter=LeabraNetwork::phase_no; update_after=0; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize the local phase_no counter, and corresponding network one"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"].vars["phase_no"]$; counter=LeabraNetwork::phase_no; update_after=0; }; MethodCall @[1] { desc="initializes various counters at start of trial"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"].args["network"]$; method=LeabraNetwork::Trial_Init; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; WhileLoop @[2] { desc="loop over phases of settling in the network"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; UserScript @[0] { desc=; flags=OFF; orig_prog_code=; script { expr=".programs.LeabraTestSettle.Init(); "; }; }; ProgramCall @[1] { desc="run the settle program (which iterates over cyles of network activation updating) for each phase"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="TestWP"; required=1; def_val=; expr { expr="TestWP"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"]$; targ_ld_init="*LeabraTestSettle*"; }; NetCounterIncr @[2] { desc="increment the phase number (also on network)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"].vars["phase_no"]$; counter=LeabraNetwork::phase_no; update_after=0; }; MethodCall @[3] { desc="increments other phase state information to prepare for the next phase of settling"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"].args["network"]$; method=LeabraNetwork::Trial_UpdatePhase; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; test { expr="phase_no < network.phase_max"; }; }; MethodCall @[3] { desc="after the trial is over, do final computations: Compute_dWt (learn weights), compute stats"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"].args["network"]$; method=LeabraNetwork::Trial_Final; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; ProgramCall @[4] { desc="records data about the trial-level processing to a datatable for graphing/processing"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=Network; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrialMonitor"]$; targ_ld_init="*LeabraTrialMonitor*"; }; ProgramCall @[5] { desc="run program that records data from network and possibly other sources about the epoch"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=bool; type="bool"; name="final_rf"; required=1; def_val=; expr { expr="acc_rf"; }; }; ProgArg @[2] { arg_type=bool; type="bool"; name="init_rf"; required=1; def_val=; expr { expr="false"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_Go"]$; targ_ld_init="*ActBasedRField*"; }; ProgramCall @[6] { desc="run program that records data from network and possibly other sources about the epoch"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=bool; type="bool"; name="final_rf"; required=1; def_val=; expr { expr="acc_rf"; }; }; ProgArg @[2] { arg_type=bool; type="bool"; name="init_rf"; required=1; def_val=; expr { expr="false"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs["ActBasedRField_NoGo"]$; targ_ld_init="*ActBasedRField*"; }; NetUpdateView @[7] { desc="update the network view(s) (only if update_net_view is true)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"].args["network"]$; update_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestTrial"].vars["update_net_view"]$$; }; }; step_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"]$; step_n=1; }; Program @["LeabraSettle"] { name="LeabraSettle"; short_nm="Settle"; tags="Leabra, Std"; desc="iterates over cycles of updating until network has settled into a stable state, or output activations have exceeded a threshold"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["Train_Freq"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["cycle"] { name="cycle"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="current cycle of settling (local loop counter)"; init_from=NULL; }; ProgVar @["min_cycles"] { name="min_cycles"; var_type=T_Int; int_val=150; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="IMPORTANT: this value is obtained from the network min_cycles and min_cycles_phase2 -- change the value on the network object, not here in this program! sets the minimum number of cycles to settle for, regardless of network state changes, etc"; init_from=NULL; }; ProgVar @["update_net_view"] { name="update_net_view"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="if true, will update network views at end of settling"; init_from=NULL; }; ProgVar @["LayerWriter_0"] { name="LayerWriter_0"; var_type=T_Object; object_type=LayerWriter; object_val=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputs"].objs["LayerWriter_0"]$$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["Mypause"] { name="Mypause"; var_type=T_Int; int_val=30; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize local cycle counter and corresponding counter on network"; flags=0; orig_prog_code=; network_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].args["network"]$$; local_ctr_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].vars["cycle"]$$; counter=Network::cycle; update_after=0; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize local cycle counter and corresponding counter on network"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].vars["cycle"]$; counter=Network::cycle; update_after=0; }; MethodCall @[1] { desc="resets input data, before getting new external inputs data from apply inputs call"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].args["network"]$; method=Network::Init_InputData; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; ProgramCall @[2] { desc="apply external input activations from the input_data table to the network this program can be extended to do arbitrary things to generate data and apply it to network layers"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=Network; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="input_data"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputs"]$$; targ_ld_init="*ApplyInputs*"; }; ProgramCall @[3] { desc=; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="input_data"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$; targ_ld_init="*DA_Rew_Punish*"; }; If @[4] { desc=; flags=0; orig_prog_code=; cond { expr="network.phase == LeabraNetwork::PLUS_PHASE"; }; true_code { name=; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc=; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].args["network"]$; path="cycle_max"; expr { expr="Mypause"; }; update_after=0; }; }; }; Else @[5] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc="number of cycles to run in minus phase"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].args["network"]$; path="cycle_max"; expr { expr="100"; }; update_after=0; }; }; }; MethodCall @[6] { desc="initializes various counters at start of settling"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].args["network"]$; method=LeabraNetwork::Settle_Init; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; If @[7] { desc="get appropriate min_cycles value depending on which phase we're in"; flags=0; orig_prog_code=; cond { expr="network.phase_no <= 1"; }; true_code { name=; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc="get minimum number of cycles from parameter on network (which is where you should change this value!)"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].vars["min_cycles"]$$; expr { expr="network.min_cycles"; }; }; }; }; Else @[8] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc="get minimum number of cycles from parameter on network (which is where you should change this value!)"; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].vars["min_cycles"]$; expr { expr="network.min_cycles_phase2"; }; }; }; }; WhileLoop @[9] { desc="the main loop over cycles of updating"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ProgramCall @[0] { desc="run the cycle program, which computes one cycle of activations"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraCycle"]$; targ_ld_init="*LeabraCycle*"; }; NetCounterIncr @[1] { desc="increment cycle counter (also on network)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].vars["cycle"]$; counter=Network::cycle; update_after=0; }; IfContinue @[2] { desc="avoid subsequent stopping criteria if below min_cycles"; flags=0; orig_prog_code=; cond { expr="cycle < min_cycles"; }; }; IfBreak @[3] { desc="stopping criterion for settling: based either on maximum change in activation (maxda) or on the maximum activation value in the network getting over threshold (which ever comes first). Set either parmeter to values that are always false (e.g., trg_max_act_stopcrit = -1) to eliminate associated source of criterion for stopping settling."; flags=0; orig_prog_code=; cond { expr="(network.maxda < network.maxda_stopcrit) || (network.trg_max_act > network.trg_max_act_stopcrit)"; }; }; }; test { expr="cycle < network.cycle_max"; }; }; MethodCall @[10] { desc="perform final operations at end of settling (storing final activations, etc)"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].args["network"]$; method=LeabraNetwork::Settle_Final; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; If @[11] { desc="only run trial-level statistics in minus phase (otherwise network may have correct answer clamped on!). IMPORTANT: this assumes that you've got target activation values for output layers already presented in the minus phase -- if this is not the case (values are computed on the fly), you may want to run this instead at the start of the plus phase, after ApplyInputs"; flags=0; orig_prog_code=; cond { expr="network.phase == LeabraNetwork::MINUS_PHASE"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="compute trial-level statistics"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].args["network"]$; method=LeabraNetwork::Compute_TrialStats; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; If @[12] { desc="this stat must be called in plus phase when reward information is avail"; flags=0; orig_prog_code=; cond { expr="network.phase_no == 1"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="get external reward information"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].args["network"]$; method=LeabraNetwork::Compute_ExtRew; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; NetUpdateView @[13] { desc="update network views, if update_net_view == true"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].args["network"]$; update_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraSettle"].vars["update_net_view"]$$; }; PrintExpr @[14] { desc=; flags=OFF; orig_prog_code=; expr { expr="network->cycle_max"; }; my_mask=NULL; debug_level=NULL; }; }; step_prog=NULL; step_n=1; }; Program @["LeabraTrnTestSettle"] { name="LeabraTrnTestSettle"; short_nm="TrTsSt"; tags="Leabra, Std"; desc="iterates over cycles of updating until network has settled into a stable state, or output activations have exceeded a threshold"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["cycle"] { name="cycle"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="current cycle of settling (local loop counter)"; init_from=NULL; }; ProgVar @["min_cycles"] { name="min_cycles"; var_type=T_Int; int_val=150; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="IMPORTANT: this value is obtained from the network min_cycles and min_cycles_phase2 -- change the value on the network object, not here in this program! sets the minimum number of cycles to settle for, regardless of network state changes, etc"; init_from=NULL; }; ProgVar @["update_net_view"] { name="update_net_view"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="if true, will update network views at end of settling"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize local cycle counter and corresponding counter on network"; flags=0; orig_prog_code=; network_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].args["network"]$$; local_ctr_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].vars["cycle"]$$; counter=Network::cycle; update_after=0; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize local cycle counter and corresponding counter on network"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].vars["cycle"]$; counter=Network::cycle; update_after=0; }; MethodCall @[1] { desc="resets input data, before getting new external inputs data from apply inputs call"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].args["network"]$; method=Network::Init_InputData; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; ProgramCall @[2] { desc="apply external input activations from the input_data table to the network this program can be extended to do arbitrary things to generate data and apply it to network layers"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=Network; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="input_data"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTrnTest"]$$; targ_ld_init="*ApplyInputs*"; }; ProgramCall @[3] { desc=; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="input_data"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$; targ_ld_init="*DA_Rew_Punish*"; }; If @[4] { desc=; flags=0; orig_prog_code=; cond { expr="network.phase == LeabraNetwork::PLUS_PHASE"; }; true_code { name=; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc=; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].args["network"]$; path="cycle_max"; expr { expr="20"; }; update_after=0; }; }; }; Else @[5] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc="number of cycles to run in minus phase"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].args["network"]$; path="cycle_max"; expr { expr="100"; }; update_after=0; }; }; }; MethodCall @[6] { desc="initializes various counters at start of settling"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].args["network"]$; method=LeabraNetwork::Settle_Init; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; If @[7] { desc="get appropriate min_cycles value depending on which phase we're in"; flags=0; orig_prog_code=; cond { expr="network.phase_no <= 1"; }; true_code { name=; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc="get minimum number of cycles from parameter on network (which is where you should change this value!)"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].vars["min_cycles"]$$; expr { expr="network.min_cycles"; }; }; }; }; Else @[8] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc="get minimum number of cycles from parameter on network (which is where you should change this value!)"; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].vars["min_cycles"]$; expr { expr="network.min_cycles_phase2"; }; }; }; }; WhileLoop @[9] { desc="the main loop over cycles of updating"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ProgramCall @[0] { desc="run the cycle program, which computes one cycle of activations"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraCycle"]$; targ_ld_init="*LeabraCycle*"; }; NetCounterIncr @[1] { desc="increment cycle counter (also on network)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].vars["cycle"]$; counter=Network::cycle; update_after=0; }; IfContinue @[2] { desc="avoid subsequent stopping criteria if below min_cycles"; flags=0; orig_prog_code=; cond { expr="cycle < min_cycles"; }; }; IfBreak @[3] { desc="stopping criterion for settling: based either on maximum change in activation (maxda) or on the maximum activation value in the network getting over threshold (which ever comes first). Set either parmeter to values that are always false (e.g., trg_max_act_stopcrit = -1) to eliminate associated source of criterion for stopping settling."; flags=0; orig_prog_code=; cond { expr="(network.maxda < network.maxda_stopcrit) || (network.trg_max_act > network.trg_max_act_stopcrit)"; }; }; }; test { expr="cycle < network.cycle_max"; }; }; MethodCall @[10] { desc="perform final operations at end of settling (storing final activations, etc)"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].args["network"]$; method=LeabraNetwork::Settle_Final; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; If @[11] { desc="only run trial-level statistics in minus phase (otherwise network may have correct answer clamped on!). IMPORTANT: this assumes that you've got target activation values for output layers already presented in the minus phase -- if this is not the case (values are computed on the fly), you may want to run this instead at the start of the plus phase, after ApplyInputs"; flags=0; orig_prog_code=; cond { expr="network.phase == LeabraNetwork::MINUS_PHASE"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="compute trial-level statistics"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].args["network"]$; method=LeabraNetwork::Compute_TrialStats; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; If @[12] { desc="this stat must be called in plus phase when reward information is avail"; flags=0; orig_prog_code=; cond { expr="network.phase_no == 1"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="get external reward information"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].args["network"]$; method=LeabraNetwork::Compute_ExtRew; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; NetUpdateView @[13] { desc="update network views, if update_net_view == true"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].args["network"]$; update_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestSettle"].vars["update_net_view"]$$; }; }; step_prog=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraCycle"]$; step_n=1; }; Program @["LeabraTestSettle"] { name="LeabraTestSettle"; short_nm="Settle"; tags=; desc="iterates over cycles of updating until network has settled into a stable state, or output activations have exceeded a threshold"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["TestWP"] { name="TestWP"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["cycle"] { name="cycle"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="current cycle of settling (local loop counter)"; init_from=NULL; }; ProgVar @["tstcycle"] { name="tstcycle"; var_type=T_Int; int_val=100; objs_ptr=0; flags=CTRL_PANEL|CTRL_READ_ONLY|NULL_CHECK|SAVE_VAL|USED; reference=0; desc="current cycle of settling (local loop counter)"; init_from=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraBatch"]$; }; ProgVar @["min_cycles"] { name="min_cycles"; var_type=T_Int; int_val=150; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="IMPORTANT: this value is obtained from the network min_cycles and min_cycles_phase2 -- change the value on the network object, not here in this program! sets the minimum number of cycles to settle for, regardless of network state changes, etc"; init_from=NULL; }; ProgVar @["update_net_view"] { name="update_net_view"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="if true, will update network views at end of settling"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize local cycle counter and corresponding counter on network"; flags=0; orig_prog_code=; network_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].args["network"]$$; local_ctr_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].vars["cycle"]$$; counter=Network::cycle; update_after=0; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; NetCounterInit @[0] { desc="initialize local cycle counter and corresponding counter on network"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].vars["cycle"]$; counter=Network::cycle; update_after=0; }; MethodCall @[1] { desc="resets input data, before getting new external inputs data from apply inputs call"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].args["network"]$; method=Network::Init_InputData; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; ProgramCall @[2] { desc="apply external input activations from the input_data table to the network this program can be extended to do arbitrary things to generate data and apply it to network layers"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=Network; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="TestWP"; required=1; def_val=; expr { expr="TestWP"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTest"]$$; targ_ld_init="*ApplyInputsTest*"; }; ProgramCall @[3] { desc=; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; ProgArg @[1] { arg_type=DataTable; type="DataTable*"; name="input_data"; required=1; def_val=; expr { expr="TestWP"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"]$; targ_ld_init="*DA_Rew_Punish*"; }; If @[4] { desc=; flags=0; orig_prog_code=; cond { expr="network.phase == LeabraNetwork::PLUS_PHASE"; }; true_code { name=; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc=; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].args["network"]$; path="cycle_max"; expr { expr="30"; }; update_after=0; }; }; }; Else @[5] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc="number of cycles to run in minus phase"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].args["network"]$; path="cycle_max"; expr { expr="tstcycle"; }; update_after=0; }; }; }; MethodCall @[6] { desc="initializes various counters at start of settling"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].args["network"]$; method=LeabraNetwork::Settle_Init; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; If @[7] { desc="get appropriate min_cycles value depending on which phase we're in"; flags=0; orig_prog_code=; cond { expr="network.phase_no <= 1"; }; true_code { name=; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc="get minimum number of cycles from parameter on network (which is where you should change this value!)"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].vars["min_cycles"]$$; expr { expr="network.min_cycles"; }; }; }; }; Else @[8] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc="get minimum number of cycles from parameter on network (which is where you should change this value!)"; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].vars["min_cycles"]$; expr { expr="network.min_cycles_phase2"; }; }; }; }; WhileLoop @[9] { desc="the main loop over cycles of updating"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ProgramCall @[0] { desc="run the cycle program, which computes one cycle of activations"; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=LeabraNetwork; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestCycle"]$$; targ_ld_init="*LeabraTestCycle*"; }; NetCounterIncr @[1] { desc="increment cycle counter (also on network)"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].args["network"]$; local_ctr_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].vars["cycle"]$; counter=Network::cycle; update_after=0; }; IfContinue @[2] { desc="avoid subsequent stopping criteria if below min_cycles"; flags=0; orig_prog_code=; cond { expr="cycle < min_cycles"; }; }; IfBreak @[3] { desc="stopping criterion for settling: based either on maximum change in activation (maxda) or on the maximum activation value in the network getting over threshold (which ever comes first). Set either parmeter to values that are always false (e.g., trg_max_act_stopcrit = -1) to eliminate associated source of criterion for stopping settling."; flags=0; orig_prog_code=; cond { expr="(network.maxda < network.maxda_stopcrit) || (network.trg_max_act > network.trg_max_act_stopcrit)"; }; }; }; test { expr="cycle < network.cycle_max"; }; }; MethodCall @[10] { desc="perform final operations at end of settling (storing final activations, etc)"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].args["network"]$; method=LeabraNetwork::Settle_Final; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; If @[11] { desc="only run trial-level statistics in minus phase (otherwise network may have correct answer clamped on!). IMPORTANT: this assumes that you've got target activation values for output layers already presented in the minus phase -- if this is not the case (values are computed on the fly), you may want to run this instead at the start of the plus phase, after ApplyInputs"; flags=0; orig_prog_code=; cond { expr="network.phase == LeabraNetwork::MINUS_PHASE"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="compute trial-level statistics"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].args["network"]$; method=LeabraNetwork::Compute_TrialStats; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; If @[12] { desc="this stat must be called in plus phase when reward information is avail"; flags=0; orig_prog_code=; cond { expr="network.phase_no == 1"; }; true_code { name=; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="get external reward information"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].args["network"]$; method=LeabraNetwork::Compute_ExtRew; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; }; NetUpdateView @[13] { desc="update network views, if update_net_view == true"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].args["network"]$; update_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestSettle"].vars["update_net_view"]$$; }; }; step_prog=NULL; step_n=1; }; Program @["LeabraCycle"] { name="LeabraCycle"; short_nm="Cycle"; tags="Leabra, Std"; desc="runs one cycle of leabra processing (updating net inputs and activations)"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["update_net_view"] { name="update_net_view"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="determines whether network views will be updated on a cycle-by-cycle basis (slow, but often quite useful for seeing how processing is proceeding)"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="this does all the standard leabra processing for one cycle of activation updating"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraCycle"].args["network"]$$; method=LeabraNetwork::Cycle_Run; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; NetUpdateView @[1] { desc="update network views if update_net_view == true"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraCycle"].args["network"]$; update_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraCycle"].vars["update_net_view"]$$; }; ProgramCall @[2] { desc=; flags=OFF|NON_STD; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=Network; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Cycle_Monitor"]$$; targ_ld_init="*Cycle_Monitor*"; }; }; step_prog=NULL; step_n=1; }; Program @["LeabraTestCycle"] { name="LeabraTestCycle"; short_nm="TCycle"; tags=; desc="runs one cycle of leabra processing (updating net inputs and activations)"; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["update_net_view"] { name="update_net_view"; var_type=T_Bool; bool_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="determines whether network views will be updated on a cycle-by-cycle basis (slow, but often quite useful for seeing how processing is proceeding)"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="this does all the standard leabra processing for one cycle of activation updating"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestCycle"].args["network"]$$; method=LeabraNetwork::Cycle_Run; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; NetUpdateView @[1] { desc="update network views if update_net_view == true"; flags=0; orig_prog_code=; network_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestCycle"].args["network"]$; update_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTestCycle"].vars["update_net_view"]$$; }; ProgramCall @[2] { desc=; flags=0; orig_prog_code=; prog_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=Network; type="LeabraNetwork*"; name="network"; required=1; def_val=; expr { expr="network"; }; }; }; target=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Cycle_Monitor"]$; targ_ld_init="*Cycle_Monitor*"; }; }; step_prog=NULL; step_n=1; }; Program @["ApplyInputs"] { name="ApplyInputs"; short_nm="AplyIn"; tags="Network, InputData, Apply"; desc="apply the current input data to the network as external input and target values"; flags=NO_STOP_STEP; objs { name="objs"; el_typ=LayerWriter; el_def=0; LayerWriter @["LayerWriter_0"] { name="LayerWriter_0"; data=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["Train_Freq"]$; network=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; layer_data { name="layer_data"; el_typ=LayerWriterEl; el_def=0; LayerWriterEl @[0] { col_name="Input"; net_target=LAYER; layer_name="Input"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=EXT; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; LayerWriterEl @[1] { col_name="Output"; net_target=LAYER; layer_name="Output"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=TARG; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; LayerWriterEl @[2] { col_name="SNc"; net_target=LAYER; layer_name="SNc"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=EXT; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; LayerWriterEl @[3] { col_name="Motor_Cortex"; net_target=LAYER; layer_name="Motor_Cortex"; offset {x=0: y=0: }; use_layer_type=0; quiet=0; na_by_range=0; ext_flags=COMP; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; LayerWriterEl @[4] { col_name="Name"; net_target=TRIAL_NAME; layer_name="Name"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=0; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; }; }; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=Network; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to apply inputs to -- typically set by calling program"; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["Train_Freq"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="input datatable containing input/output patterns"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["LayerWriter_0"] { name="LayerWriter_0"; var_type=T_Object; object_type=LayerWriter; object_val=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputs"].objs["LayerWriter_0"]$; objs_ptr=1; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="this is a pointer to the LayerWriter object in objs -- edit that object to determine how information is presented to the network"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="sets the datatable and network for the layer writer, so it knows what to write to"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputs"].vars["LayerWriter_0"]$$; method=LayerWriter::SetDataNetwork; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="db"; required=1; def_val=; expr { expr="input_data"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; }; }; MethodCall @[1] { desc="check the configuration of the layer writer -- will emit warnings and errors for missing or misconfigured items"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputs"].vars["LayerWriter_0"]$; method=taList_impl::CheckConfig; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="quiet"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="sets the datatable and network for the layer writer, so it knows what to write to"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputs"].vars["LayerWriter_0"]$; method=LayerWriter::SetDataNetwork; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="db"; required=1; def_val=; expr { expr="input_data"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; }; }; MethodCall @[1] { desc="apply inputs to the network! layer writer has all the key specs"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputs"].vars["LayerWriter_0"]$; method=LayerWriter::ApplyInputData; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; step_prog=NULL; step_n=1; }; Program @["ApplyInputsTest"] { name="ApplyInputsTest"; short_nm="AplyIn"; tags=; desc="apply the current input data to the network as external input and target values"; flags=NO_STOP_STEP; objs { name="objs"; el_typ=LayerWriter; el_def=0; LayerWriter @["LayerWriter_0"] { name="LayerWriter_0"; data=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; network=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; layer_data { name="layer_data"; el_typ=LayerWriterEl; el_def=0; LayerWriterEl @[0] { col_name="Input"; net_target=LAYER; layer_name="Input"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=EXT; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; LayerWriterEl @[1] { col_name="Output"; net_target=LAYER; layer_name="Output"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=TARG; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; LayerWriterEl @[2] { col_name="SNc"; net_target=LAYER; layer_name="SNc"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=EXT; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; LayerWriterEl @[3] { col_name="Name"; net_target=TRIAL_NAME; layer_name="Name"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=0; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; }; }; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=Network; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to apply inputs to -- typically set by calling program"; init_from=NULL; }; ProgVar @["TestWP"] { name="TestWP"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="input datatable containing input/output patterns"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["LayerWriter_0"] { name="LayerWriter_0"; var_type=T_Object; object_type=LayerWriter; object_val=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTest"].objs["LayerWriter_0"]$$; objs_ptr=1; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="this is a pointer to the LayerWriter object in objs -- edit that object to determine how information is presented to the network"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="sets the datatable and network for the layer writer, so it knows what to write to"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTest"].vars["LayerWriter_0"]$$; method=LayerWriter::SetDataNetwork; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="db"; required=1; def_val=; expr { expr="TestWP"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; }; }; MethodCall @[1] { desc="check the configuration of the layer writer -- will emit warnings and errors for missing or misconfigured items"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTest"].vars["LayerWriter_0"]$; method=taList_impl::CheckConfig; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="quiet"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="sets the datatable and network for the layer writer, so it knows what to write to"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTest"].vars["LayerWriter_0"]$; method=LayerWriter::SetDataNetwork; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="db"; required=1; def_val=; expr { expr="TestWP"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; }; }; MethodCall @[1] { desc="apply inputs to the network! layer writer has all the key specs"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTest"].vars["LayerWriter_0"]$; method=LayerWriter::ApplyInputData; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; step_prog=NULL; step_n=1; }; Program @["ApplyInputsTrnTest"] { name="ApplyInputsTrnTest"; short_nm="pplTrT"; tags=; desc="apply the current input data to the network as external input and target values"; flags=NO_STOP_STEP; objs { name="objs"; el_typ=LayerWriter; el_def=0; LayerWriter @["LayerWriter_0"] { name="LayerWriter_0"; data=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; network=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; layer_data { name="layer_data"; el_typ=LayerWriterEl; el_def=0; LayerWriterEl @[0] { col_name="Input"; net_target=LAYER; layer_name="Input"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=EXT; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; LayerWriterEl @[1] { col_name="Output"; net_target=LAYER; layer_name="Output"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=TARG; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; LayerWriterEl @[2] { col_name="SNc"; net_target=LAYER; layer_name="SNc"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=EXT; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; LayerWriterEl @[3] { col_name="Name"; net_target=TRIAL_NAME; layer_name="Name"; offset {x=0: y=0: }; use_layer_type=1; quiet=0; na_by_range=0; ext_flags=0; noise {name="noise": type=NONE: mean=0: var=0.5: par=1: }; }; }; }; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=Network; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to apply inputs to -- typically set by calling program"; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="input datatable containing input/output patterns"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["LayerWriter_0"] { name="LayerWriter_0"; var_type=T_Object; object_type=LayerWriter; object_val=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTrnTest"].objs["LayerWriter_0"]$$; objs_ptr=1; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="this is a pointer to the LayerWriter object in objs -- edit that object to determine how information is presented to the network"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="sets the datatable and network for the layer writer, so it knows what to write to"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTrnTest"].vars["LayerWriter_0"]$$; method=LayerWriter::SetDataNetwork; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="db"; required=1; def_val=; expr { expr="input_data"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; }; }; MethodCall @[1] { desc="check the configuration of the layer writer -- will emit warnings and errors for missing or misconfigured items"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTrnTest"].vars["LayerWriter_0"]$; method=taList_impl::CheckConfig; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="quiet"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="sets the datatable and network for the layer writer, so it knows what to write to"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTrnTest"].vars["LayerWriter_0"]$; method=LayerWriter::SetDataNetwork; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="db"; required=1; def_val=; expr { expr="input_data"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; }; }; MethodCall @[1] { desc="apply inputs to the network! layer writer has all the key specs"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["ApplyInputsTrnTest"].vars["LayerWriter_0"]$; method=LayerWriter::ApplyInputData; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; step_prog=NULL; step_n=1; }; Program @["LeabraTrialMonitor"] { name="LeabraTrialMonitor"; short_nm="TrlMon"; tags="Leabra, Std, Monitor"; desc="monitor trial-level data from the network (and potentially other sources) -- stores results in datatable (TrialOutputData typically) that can be used for graph/grid views and further analysis "; flags=NO_STOP_STEP; objs { name="objs"; el_typ=NetMonitor; el_def=0; NetMonitor @["trial_netmon"] { name="trial_netmon"; items { name="items"; el_typ=NetMonItem; el_def=0; NetMonItem @["batch"] { name="batch"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="batch"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["epoch"] { name="epoch"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="epoch"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["trial"] { name="trial"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="trial"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["trial_name"] { name="trial_name"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="trial_name"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["group_name"] { name="group_name"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="group_name"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["phase_no"] { name="phase_no"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="phase_no"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["minus_cycles"] { name="minus_cycles"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="minus_cycles"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["sse"] { name="sse"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="sse"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["ext_rew"] { name="ext_rew"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="ext_rew"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["Output_sse"] { name="Output_sse"; computed=0; object_type=LeabraLayer; object=.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Output"]$$; variable="sse"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; }; network=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; data=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrialOutputData"]$; rmv_orphan_cols=1; }; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=Network; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to record data from"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["trial_mon_data"] { name="trial_mon_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrialOutputData"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="data table to record trial-level data to (this program writes new data to this table!)"; init_from=NULL; }; ProgVar @["trial_netmon"] { name="trial_netmon"; var_type=T_Object; object_type=NetMonitor; object_val=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrialMonitor"].objs["trial_netmon"]$$; objs_ptr=1; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="pointer to the NetMonitor object in objs secton of this program that contains configuration for what to record and where to get it"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="set the network and datatable for the NetMonitor"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrialMonitor"].vars["trial_netmon"]$$; method=NetMonitor::SetDataNetwork; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="trial_mon_data"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; }; }; MethodCall @[1] { desc="check the configuration of the network monitor -- will emit warnings and errors for misconfigurations"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrialMonitor"].vars["trial_netmon"]$; method=taBase::CheckConfig; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="quiet"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; MethodCall @[2] { desc="update the monitor items and data schema based on current settings of the NetMonitor object"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrialMonitor"].vars["trial_netmon"]$; method=NetMonitor::UpdateMonitors; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="reset_first"; required=0; def_val="false"; expr { expr="true"; }; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="add a new blank row to the data"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrialMonitor"].vars["trial_mon_data"]$$; method=DataTable::AddBlankRow; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; MethodCall @[1] { desc="get the new monitor data from the network and other sources -- this does the main work"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrialMonitor"].vars["trial_netmon"]$; method=NetMonitor::GetMonVals; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; MethodCall @[2] { desc="update views and other things after writing new data to monitor data table"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrialMonitor"].vars["trial_mon_data"]$; method=DataTable::WriteClose; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; MethodCall @[3] { desc="only functional for dmem projects: synchronizes trial data across processes so that all distributed memory processors have the same trial-level data, despite having run only a subset of them each"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrialMonitor"].args["network"]$$; method=Network::DMem_ShareTrialData; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="trial_mon_data"; }; }; ProgArg @[1] { arg_type=int; type="int"; name="n_rows"; required=0; def_val="1"; expr { expr="1"; }; }; }; }; }; step_prog=NULL; step_n=1; }; Program @["LeabraTrnTestTrialMonitor"] { name="LeabraTrnTestTrialMonitor"; short_nm="TrTsTr"; tags="Leabra, Std, Monitor"; desc="monitor trial-level data from the network (and potentially other sources) -- stores results in datatable (TrialOutputData typically) that can be used for graph/grid views and further analysis "; flags=NO_STOP_STEP; objs { name="objs"; el_typ=NetMonitor; el_def=0; NetMonitor @["trial_netmon"] { name="trial_netmon"; items { name="items"; el_typ=NetMonItem; el_def=0; NetMonItem @["batch"] { name="batch"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="batch"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["epoch"] { name="epoch"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="epoch"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["trial"] { name="trial"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="trial"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["trial_name"] { name="trial_name"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="trial_name"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["group_name"] { name="group_name"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="group_name"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["phase_no"] { name="phase_no"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="phase_no"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["minus_cycles"] { name="minus_cycles"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="minus_cycles"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["sse"] { name="sse"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="sse"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["ext_rew"] { name="ext_rew"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="ext_rew"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["Output_sse"] { name="Output_sse"; computed=0; object_type=LeabraLayer; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Output"]$; variable="sse"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; }; network=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; data=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestTrialOutputData"]$; rmv_orphan_cols=1; }; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=Network; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to record data from"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["trial_mon_data"] { name="trial_mon_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestTrialOutputData"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="data table to record trial-level data to (this program writes new data to this table!)"; init_from=NULL; }; ProgVar @["trial_netmon"] { name="trial_netmon"; var_type=T_Object; object_type=NetMonitor; object_val=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrialMonitor"].objs["trial_netmon"]$$; objs_ptr=1; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="pointer to the NetMonitor object in objs secton of this program that contains configuration for what to record and where to get it"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="set the network and datatable for the NetMonitor"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrialMonitor"].vars["trial_netmon"]$$; method=NetMonitor::SetDataNetwork; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="trial_mon_data"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; }; }; MethodCall @[1] { desc="check the configuration of the network monitor -- will emit warnings and errors for misconfigurations"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrialMonitor"].vars["trial_netmon"]$; method=taBase::CheckConfig; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="quiet"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; MethodCall @[2] { desc="update the monitor items and data schema based on current settings of the NetMonitor object"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrialMonitor"].vars["trial_netmon"]$; method=NetMonitor::UpdateMonitors; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="reset_first"; required=0; def_val="false"; expr { expr="true"; }; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="add a new blank row to the data"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrialMonitor"].vars["trial_mon_data"]$$; method=DataTable::AddBlankRow; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; MethodCall @[1] { desc="get the new monitor data from the network and other sources -- this does the main work"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrialMonitor"].vars["trial_netmon"]$; method=NetMonitor::GetMonVals; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; MethodCall @[2] { desc="update views and other things after writing new data to monitor data table"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrialMonitor"].vars["trial_mon_data"]$; method=DataTable::WriteClose; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; MethodCall @[3] { desc="only functional for dmem projects: synchronizes trial data across processes so that all distributed memory processors have the same trial-level data, despite having run only a subset of them each"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestTrialMonitor"].args["network"]$$; method=Network::DMem_ShareTrialData; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="trial_mon_data"; }; }; ProgArg @[1] { arg_type=int; type="int"; name="n_rows"; required=0; def_val="1"; expr { expr="1"; }; }; }; }; }; step_prog=NULL; step_n=1; }; Program @["Cycle_Monitor"] { name="Cycle_Monitor"; short_nm="Monitor"; tags=; desc="monitor trial-level data from the network (and potentially other sources) -- stores results in datatable (TrialOutputData typically) that can be used for graph/grid views and further analysis "; flags=NO_STOP_STEP; objs { name="objs"; el_typ=NetMonitor; el_def=0; NetMonitor @["cycle_netmon"] { name="cycle_netmon"; items { name="items"; el_typ=NetMonItem; el_def=0; NetMonItem @["batch"] { name="batch"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="batch"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["epoch"] { name="epoch"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="epoch"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["trial"] { name="trial"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="trial"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["trial_name"] { name="trial_name"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="trial_name"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["group_name"] { name="group_name"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="group_name"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["phase_no"] { name="phase_no"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="phase_no"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["cycle"] { name="cycle"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="cycle"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["sse"] { name="sse"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="sse"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["ext_rew"] { name="ext_rew"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="ext_rew"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["STN_acts_avg"] { name="STN_acts_avg"; computed=0; object_type=LeabraLayer; object=.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["STN"]$$; variable="acts.avg"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["Motor__acts_avg"] { name="Motor__acts_avg"; computed=0; object_type=LeabraLayer; object=.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Motor_Cortex"]$$; variable="acts.avg"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["Thalam_acts_avg"] { name="Thalam_acts_avg"; computed=0; object_type=LeabraLayer; object=.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Thalamus"]$$; variable="acts.avg"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["GP_Int_acts_avg"] { name="GP_Int_acts_avg"; computed=0; object_type=LeabraLayer; object=.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["GP_Int"]$$; variable="acts.avg"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["GP_Ext_acts_avg"] { name="GP_Ext_acts_avg"; computed=0; object_type=LeabraLayer; object=.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["GP_Ext"]$$; variable="acts.avg"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["Output_act"] { name="Output_act"; computed=0; object_type=LeabraLayer; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Output"]$; variable="act"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["Output_units_0_act"] { name="Output_units_0_act"; computed=0; object_type=LeabraLayer; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Output"]$; variable="units[0].act"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; }; network=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"]$$; rmv_orphan_cols=1; }; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=Network; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to record data from"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["cycle_mon_data"] { name="cycle_mon_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="data table to record trial-level data to (this program writes new data to this table!)"; init_from=NULL; }; ProgVar @["cycle_netmon"] { name="cycle_netmon"; var_type=T_Object; object_type=NetMonitor; object_val=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Cycle_Monitor"].objs["cycle_netmon"]$$; objs_ptr=1; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="pointer to the NetMonitor object in objs secton of this program that contains configuration for what to record and where to get it"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="set the network and datatable for the NetMonitor"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Cycle_Monitor"].vars["cycle_netmon"]$$; method=NetMonitor::SetDataNetwork; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="cycle_mon_data"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; }; }; MethodCall @[1] { desc="check the configuration of the network monitor -- will emit warnings and errors for misconfigurations"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Cycle_Monitor"].vars["cycle_netmon"]$; method=taBase::CheckConfig; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="quiet"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; MethodCall @[2] { desc="update the monitor items and data schema based on current settings of the NetMonitor object"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Cycle_Monitor"].vars["cycle_netmon"]$; method=NetMonitor::UpdateMonitors; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="reset_first"; required=0; def_val="false"; expr { expr="true"; }; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; IfReturn @[0] { desc=; flags=0; orig_prog_code=; cond { expr="network.phase_no>0"; }; }; MethodCall @[1] { desc="add a new blank row to the data"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Cycle_Monitor"].vars["cycle_mon_data"]$$; method=DataTable::AddBlankRow; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; MethodCall @[2] { desc="get the new monitor data from the network and other sources -- this does the main work"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Cycle_Monitor"].vars["cycle_netmon"]$; method=NetMonitor::GetMonVals; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; MethodCall @[3] { desc="update views and other things after writing new data to monitor data table"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Cycle_Monitor"].vars["cycle_mon_data"]$; method=DataTable::WriteClose; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; MethodCall @[4] { desc="only functional for dmem projects: synchronizes trial data across processes so that all distributed memory processors have the same trial-level data, despite having run only a subset of them each"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Cycle_Monitor"].args["network"]$$; method=Network::DMem_ShareTrialData; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="cycle_mon_data"; }; }; ProgArg @[1] { arg_type=int; type="int"; name="n_rows"; required=0; def_val="1"; expr { expr="1"; }; }; }; }; }; step_prog=NULL; step_n=1; }; Program @["LeabraEpochMonitor"] { name="LeabraEpochMonitor"; short_nm="EpcMon"; tags="Leabra, Std, Monitor"; desc="monitor epoch-level data from the network to a datatable (EpochOutputData typically) for use in graphing and viewing and further analysis"; flags=NO_STOP_STEP; objs { name="objs"; el_typ=NetMonitor; el_def=0; NetMonitor @["epoch_netmon"] { name="epoch_netmon"; items { name="items"; el_typ=NetMonItem; el_def=0; NetMonItem @["batch"] { name="batch"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="batch"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["epoch"] { name="epoch"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="epoch"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["avg_sse"] { name="avg_sse"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="avg_sse"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["cnt_err"] { name="cnt_err"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="cnt_err"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["avg_ext_rew"] { name="avg_ext_rew"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="avg_ext_rew"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["avg_cycles"] { name="avg_cycles"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="avg_cycles"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; }; network=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; data=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["EpochOutputData"]$; rmv_orphan_cols=1; }; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=Network; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to get data from"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["epoch_mon_data"] { name="epoch_mon_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["EpochOutputData"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="data table to write the epoch data to"; init_from=NULL; }; ProgVar @["epoch_netmon"] { name="epoch_netmon"; var_type=T_Object; object_type=NetMonitor; object_val=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpochMonitor"].objs["epoch_netmon"]$$; objs_ptr=1; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network monitor object that contains full specs for what to record and where to get it"; init_from=NULL; }; ProgVar @["epoch_timer"] { name="epoch_timer"; var_type=T_Object; object_type=TimeUsed; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].epoch_time$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="pointer to the network's epoch-level timer, to record how long it took to process an epoch"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc="get the epoch timer from current network"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpochMonitor"].vars["epoch_timer"]$$; expr { expr="network.epoch_time"; }; }; MethodCall @[1] { desc="set data and network on NetMonitor object"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpochMonitor"].vars["epoch_netmon"]$$; method=NetMonitor::SetDataNetwork; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="epoch_mon_data"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; }; }; MethodCall @[2] { desc="check configuration and emit errors/warnings for problems"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpochMonitor"].vars["epoch_netmon"]$; method=taBase::CheckConfig; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="quiet"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; MethodCall @[3] { desc="update the monitor items and data schema based on current settings of NetMonitor"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpochMonitor"].vars["epoch_netmon"]$; method=NetMonitor::UpdateMonitors; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="reset_first"; required=0; def_val="false"; expr { expr="true"; }; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="add a new blank row to the data"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpochMonitor"].vars["epoch_mon_data"]$$; method=DataTable::AddBlankRow; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; MethodCall @[1] { desc="get the new monitor data and stor it into the data table -- this does the main job here"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpochMonitor"].vars["epoch_netmon"]$; method=NetMonitor::GetMonVals; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; AssignExpr @[2] { desc="get the epoch timer from current network"; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpochMonitor"].vars["epoch_timer"]$; expr { expr="network.epoch_time"; }; }; MethodCall @[3] { desc="update after writing new data to monitor data table"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraEpochMonitor"].vars["epoch_mon_data"]$; method=DataTable::WriteClose; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; step_prog=NULL; step_n=1; }; Program @["LeabraTrnTestEpochMonitor"] { name="LeabraTrnTestEpochMonitor"; short_nm="TrTstM"; tags="Leabra, Std, Monitor"; desc="monitor epoch-level data from the network to a datatable (EpochOutputData typically) for use in graphing and viewing and further analysis"; flags=NO_STOP_STEP; objs { name="objs"; el_typ=NetMonitor; el_def=0; NetMonitor @["epoch_netmon"] { name="epoch_netmon"; items { name="items"; el_typ=NetMonItem; el_def=0; NetMonItem @["batch"] { name="batch"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="batch"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["epoch"] { name="epoch"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="epoch"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["avg_sse"] { name="avg_sse"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="avg_sse"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["cnt_err"] { name="cnt_err"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="cnt_err"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["avg_ext_rew"] { name="avg_ext_rew"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="avg_ext_rew"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; NetMonItem @["avg_cycles"] { name="avg_cycles"; computed=0; object_type=LeabraNetwork; object=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; variable="avg_cycles"; var_label=; name_style=AUTO_NAME; max_name_len=6; val_type=VT_FLOAT; matrix=0; matrix_geom{ }; data_agg=0; data_src=NULL; agg_col { col_name=; }; agg {name="agg": op=NONE: rel={name="rel": rel=LESSTHANOREQUAL: val=0: use_var=0: var=NULL: }: }; select_rows=0; select_spec { col_name=; name="_EQUAL_"; on=1; rel=EQUAL; use_var=0; cmp 0 1; var=NULL; enable_var=NULL; }; pre_proc_1 {name="pre_proc_1": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_2 {name="pre_proc_2": opr=NONE: arg=0: lw=-1: hi=1: }; pre_proc_3 {name="pre_proc_3": opr=NONE: arg=0: lw=-1: hi=1: }; }; }; network=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; data=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestEpochOutputData"]$; rmv_orphan_cols=1; }; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=Network; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to get data from"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["epoch_mon_data"] { name="epoch_mon_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestEpochOutputData"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="data table to write the epoch data to"; init_from=NULL; }; ProgVar @["epoch_netmon"] { name="epoch_netmon"; var_type=T_Object; object_type=NetMonitor; object_val=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpochMonitor"].objs["epoch_netmon"]$$; objs_ptr=1; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network monitor object that contains full specs for what to record and where to get it"; init_from=NULL; }; ProgVar @["epoch_timer"] { name="epoch_timer"; var_type=T_Object; object_type=TimeUsed; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].epoch_time$; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="pointer to the network's epoch-level timer, to record how long it took to process an epoch"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc="get the epoch timer from current network"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpochMonitor"].vars["epoch_timer"]$$; expr { expr="network.epoch_time"; }; }; MethodCall @[1] { desc="set data and network on NetMonitor object"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpochMonitor"].vars["epoch_netmon"]$$; method=NetMonitor::SetDataNetwork; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=DataTable_ptr; type="DataTable*"; name="dt"; required=1; def_val=; expr { expr="epoch_mon_data"; }; }; ProgArg @[1] { arg_type=Network_ptr; type="Network*"; name="net"; required=1; def_val=; expr { expr="network"; }; }; }; }; MethodCall @[2] { desc="check configuration and emit errors/warnings for problems"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpochMonitor"].vars["epoch_netmon"]$; method=taBase::CheckConfig; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="quiet"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; MethodCall @[3] { desc="update the monitor items and data schema based on current settings of NetMonitor"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpochMonitor"].vars["epoch_netmon"]$; method=NetMonitor::UpdateMonitors; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=bool; type="bool"; name="reset_first"; required=0; def_val="false"; expr { expr="true"; }; }; }; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; MethodCall @[0] { desc="add a new blank row to the data"; flags=0; orig_prog_code=; result_var=NULL; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpochMonitor"].vars["epoch_mon_data"]$$; method=DataTable::AddBlankRow; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; MethodCall @[1] { desc="get the new monitor data and stor it into the data table -- this does the main job here"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpochMonitor"].vars["epoch_netmon"]$; method=NetMonitor::GetMonVals; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; AssignExpr @[2] { desc="get the epoch timer from current network"; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpochMonitor"].vars["epoch_timer"]$; expr { expr="network.epoch_time"; }; }; MethodCall @[3] { desc="update after writing new data to monitor data table"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrnTestEpochMonitor"].vars["epoch_mon_data"]$; method=DataTable::WriteClose; meth_args { name=; el_typ=ProgArg; el_def=0; }; }; }; step_prog=NULL; step_n=1; }; Program @["SaveWeights"] { name="SaveWeights"; short_nm="SvWts"; tags="Network, Weights"; desc="save network's current weight values to file using WriteWeights function, with file name based on project name + batch + epoch values"; flags=NO_STOP_STEP; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=Network; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["tag"] { name="tag"; var_type=T_String; string_val=; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="user-provided tag (startup script will set this!)"; init_from=NULL; }; ProgVar @["wts_subdir"] { name="wts_subdir"; var_type=T_String; string_val=; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="user-provided subdirectory to save weights in"; init_from=NULL; }; ProgVar @["fname"] { name="fname"; var_type=T_String; string_val=; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="final generated file name -- do not edit!"; init_from=NULL; }; ProgVar @["epoch_str"] { name="epoch_str"; var_type=T_String; string_val="0036"; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="string rep of epoch with leading zeros"; init_from=NULL; }; ProgVar @["batch_str"] { name="batch_str"; var_type=T_String; string_val="03"; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="string rep of batch with leading zeros"; init_from=NULL; }; ProgVar @["final_tag"] { name="final_tag"; var_type=T_String; string_val=".03_0036"; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="batch + epoch"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; IfReturn @[0] { desc="do not save if not the first dmem process (only relevant for dmem = distributed memory processing)"; flags=0; orig_prog_code=; cond { expr="taMisc::dmem_proc > 0"; }; }; MiscCall @[1] { desc="get current batch counter for file name, with leading zeros to length 3"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["SaveWeights"].vars["batch_str"]$$; object_type=taMisc; method=taMisc::LeadingZeros; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=int; type="int"; name="num"; required=1; def_val=; expr { expr="network.batch"; }; }; ProgArg @[1] { arg_type=int; type="int"; name="len"; required=1; def_val=; expr { expr="2"; }; }; }; }; MiscCall @[2] { desc="get current epoch counter with leading zeros to length 4"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["SaveWeights"].vars["epoch_str"]$$; object_type=taMisc; method=taMisc::LeadingZeros; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=int; type="int"; name="num"; required=1; def_val=; expr { expr="network.epoch"; }; }; ProgArg @[1] { arg_type=int; type="int"; name="len"; required=1; def_val=; expr { expr="4"; }; }; }; }; AssignExpr @[3] { desc="string 'tag' to identify the batch, epoch, and other user id info for the weights"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["SaveWeights"].vars["final_tag"]$$; expr { expr="tag + \".\" + batch_str + \"_\" + epoch_str"; }; }; MethodCall @[4] { desc="get a file name based on the project's current file name, for saving the weights"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["SaveWeights"].vars["fname"]$$; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["SaveWeights"].args["network"]$$; method=taBase::GetFileNameFmProject; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="ext"; required=1; def_val=; expr { expr="\".wts.gz\""; }; }; ProgArg @[1] { arg_type=const_taString_ref; type="taString&"; name="tag"; required=0; def_val="\"\""; expr { expr="final_tag"; }; }; ProgArg @[2] { arg_type=const_taString_ref; type="taString&"; name="subdir"; required=0; def_val="\"\""; expr { expr="wts_subdir"; }; }; ProgArg @[3] { arg_type=bool; type="bool"; name="dmem_proc_no"; required=0; def_val="false"; expr { expr="false"; }; }; }; }; MethodCall @[5] { desc="save the weights to that file name"; flags=0; orig_prog_code=; result_var=NULL; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["SaveWeights"].args["network"]$; method=Network::SaveWeights; meth_args { name=; el_typ=ProgArg; el_def=0; ProgArg @[0] { arg_type=const_taString_ref; type="taString&"; name="fname"; required=0; def_val="\"\""; expr { expr="fname"; }; }; ProgArg @[1] { arg_type=Network::WtSaveFormat; type="Network::WtSaveFormat"; name="fmt"; required=0; def_val="Network::NET_FMT"; expr { expr="Network::NET_FMT"; }; }; }; }; }; step_prog=NULL; step_n=1; }; Program @["DA_Rew_Punish"] { name="DA_Rew_Punish"; short_nm="Punish"; tags=; desc=; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="network to train"; init_from=NULL; }; ProgVar @["input_data"] { name="input_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["InputData"]["TestFreq"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc="datatable with training patterns"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["num_intact_snc_units"] { name="num_intact_snc_units"; var_type=T_Int; int_val=4; objs_ptr=0; flags=CTRL_PANEL|CTRL_READ_ONLY|NULL_CHECK|SAVE_VAL|USED; reference=0; desc=; init_from=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["LeabraTrain"]$; }; ProgVar @["active_da_units"] { name="active_da_units"; var_type=T_Int; int_val=4; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["snc_size"] { name="snc_size"; var_type=T_Int; int_val=4; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["k"] { name="k"; var_type=T_Real; real_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["sse"] { name="sse"; var_type=T_Real; real_val=0.6149298548698425; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["act0"] { name="act0"; var_type=T_Real; real_val=4.927413101540878e-6; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["act1"] { name="act1"; var_type=T_Real; real_val=0.9235113263130188; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["SNc"] { name="SNc"; var_type=T_Object; object_type=LeabraLayer; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["SNc"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["Output"] { name="Output"; var_type=T_Object; object_type=LeabraLayer; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Output"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["Motor_Cortex"] { name="Motor_Cortex"; var_type=T_Object; object_type=LeabraLayer; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Motor_Cortex"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["matrisom_unitspec"] { name="matrisom_unitspec"; var_type=T_Object; object_type=LeabraUnitSpec; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["LearnBiasUnitSpec"].children["matrisom_unitspec"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["i"] { name="i"; var_type=T_Int; int_val=4; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["tonic_DA"] { name="tonic_DA"; var_type=T_Real; real_val=0.026; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["op_sse"] { name="op_sse"; var_type=T_Int; int_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["DA_dip_val"] { name="DA_dip_val"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["DA_burst_val"] { name="DA_burst_val"; var_type=T_Real; real_val=1; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["snc_size"]$$; expr { expr="SNc.units.size"; }; }; AssignExpr @[1] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["k"]$$; expr { expr="(float)num_intact_snc_units/ snc_size"; }; }; AssignExpr @[2] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["sse"]$$; expr { expr="network.sse"; }; }; ForLoop @[3] { desc=; flags=0; orig_prog_code=; loop_code { name="ProgEl_List_177"; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc="set DA value to 0, then update for intact units after"; flags=0; orig_prog_code=; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["SNc"]$$; path="units[i].ext"; expr { expr="0"; }; update_after=0; }; }; init { expr="i = 0"; }; test { expr="i < snc_size"; }; iter { expr="i++"; }; }; If @[4] { desc="apply phasic DA in plus phase"; flags=0; orig_prog_code=; cond { expr="network.phase==LeabraNetwork::PLUS_PHASE"; }; true_code { name=; el_typ=ProgCode; el_def=0; If @[0] { desc="if error is below threshold, given DA burst"; flags=0; orig_prog_code=; cond { expr="k>0&&Output.sse<0.5"; }; true_code { name=; el_typ=ProgCode; el_def=0; ForLoop @[0] { desc="loop over snc units"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc="set external input on SNC to high value for DA burst"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["SNc"]$; path="units[i].ext"; expr { expr="DA_burst_val"; }; update_after=0; }; }; init { expr="i = 0"; }; test { expr="i < active_da_units"; }; iter { expr="i++"; }; }; MemberAssign @[1] { desc="set striatal gain in proportion to DA and # intact Snc units (contrast enhancement with DA)"; flags=0; orig_prog_code=; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["matrisom_unitspec"]$$; path="act.gain"; expr { expr="k*10000"; }; update_after=0; }; }; }; Else @[1] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; ForLoop @[0] { desc=; flags=0; orig_prog_code=; loop_code { name="loop_code"; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc="set DA units to 0 for DA dip"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["SNc"]$; path="units[i].ext"; expr { expr="DA_dip_val"; }; update_after=0; }; }; init { expr="i = 0"; }; test { expr="i < active_da_units"; }; iter { expr="i++"; }; }; MemberAssign @[1] { desc="set striatal gain to be lower for DA dip (less D1 contrast enhancement)"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["matrisom_unitspec"]$; path="act.gain"; expr { expr="600-k*300"; }; update_after=0; }; }; }; AssignExpr @[2] { desc="store minus phase activation of motor ctx unit 0"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["act0"]$$; expr { expr="Motor_Cortex.units[0].act_m"; }; }; AssignExpr @[3] { desc="store minus phase act of motor unit 1"; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["act1"]$$; expr { expr="Motor_Cortex.units[1].act_m"; }; }; ForLoop @[4] { desc=; flags=0; orig_prog_code=; loop_code { name="ProgEl_List_189"; el_typ=ProgCode; el_def=0; CssExpr @[0] { desc=; flags=0; orig_prog_code=; expr { expr="Motor_Cortex->units[i].bias.SetCnValName(0,0,\"wt\");"; }; }; }; init { expr="i = 0"; }; test { expr="i < 4"; }; iter { expr="i++"; }; }; If @[5] { desc="if model selected R1, clamp that same choice on motor cortex in plus phase so that BG can learn about it"; flags=0; orig_prog_code=; cond { expr="act0>act1"; }; true_code { name=; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc="set plus phase acts to reflect minus phase response"; flags=0; orig_prog_code=; obj=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["Motor_Cortex"]$$; path="units[0].ext"; expr { expr="1.0"; }; update_after=0; }; MemberAssign @[1] { desc="set plus phase acts to reflect minus phase response"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["Motor_Cortex"]$; path="units[1].ext"; expr { expr="0.0"; }; update_after=0; }; MemberAssign @[2] { desc="set plus phase acts to reflect minus phase response"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["Motor_Cortex"]$; path="units[2].ext"; expr { expr="1.0"; }; update_after=0; }; MemberAssign @[3] { desc="set plus phase acts to reflect minus phase response"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["Motor_Cortex"]$; path="units[3].ext"; expr { expr="0"; }; update_after=0; }; CssExpr @[4] { desc=; flags=0; orig_prog_code=; expr { expr="Motor_Cortex->units[0].bias.SetCnValName(10,0,\"wt\");"; }; }; CssExpr @[5] { desc=; flags=0; orig_prog_code=; expr { expr="Motor_Cortex->units[2].bias.SetCnValName(10,0,\"wt\");"; }; }; }; }; Else @[6] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc="set plus phase acts to reflect minus phase response"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["Motor_Cortex"]$; path="units[0].ext"; expr { expr="0"; }; update_after=0; }; MemberAssign @[1] { desc="set plus phase acts to reflect minus phase response"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["Motor_Cortex"]$; path="units[1].ext"; expr { expr="1.0"; }; update_after=0; }; MemberAssign @[2] { desc="set plus phase acts to reflect minus phase response"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["Motor_Cortex"]$; path="units[2].ext"; expr { expr="0"; }; update_after=0; }; MemberAssign @[3] { desc="set plus phase acts to reflect minus phase response"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["Motor_Cortex"]$; path="units[3].ext"; expr { expr="1.0"; }; update_after=0; }; CssExpr @[4] { desc=; flags=0; orig_prog_code=; expr { expr="Motor_Cortex->units[1].bias.SetCnValName(10,0,\"wt\");"; }; }; CssExpr @[5] { desc=; flags=0; orig_prog_code=; expr { expr="Motor_Cortex->units[3].bias.SetCnValName(10,0,\"wt\");"; }; }; }; }; }; }; Else @[5] { desc=; flags=0; orig_prog_code=; else_code { name="else_code"; el_typ=ProgCode; el_def=0; ForLoop @[0] { desc="loop over snc units"; flags=0; orig_prog_code=; loop_code { name="loop_code"; el_typ=ProgCode; el_def=0; MemberAssign @[0] { desc="set tonic DA val"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["SNc"]$; path="units[i].ext"; expr { expr="tonic_DA"; }; update_after=0; }; MemberAssign @[1] { desc="set striatal gain in proportion to DA and # intact Snc units"; flags=0; orig_prog_code=; obj=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["DA_Rew_Punish"].vars["matrisom_unitspec"]$; path="act.gain"; expr { expr="k*2500"; }; update_after=0; }; }; init { expr="i = 0"; }; test { expr="i < active_da_units"; }; iter { expr="i++"; }; }; ForLoop @[1] { desc=; flags=0; orig_prog_code=; loop_code { name="loop_code"; el_typ=ProgCode; el_def=0; CssExpr @[0] { desc=; flags=0; orig_prog_code=; expr { expr="Motor_Cortex->units[i].bias.SetCnValName(0,0,\"wt\");"; }; }; }; init { expr="i = 0"; }; test { expr="i < 4"; }; iter { expr="i++"; }; }; }; }; }; step_prog=NULL; step_n=1; }; Program @["Calc_GoNoGo"] { name="Calc_GoNoGo"; short_nm="Go"; tags=; desc=; flags=0; objs { name="objs"; el_typ=taNBase; el_def=0; }; types { name="types"; el_typ=DynEnumType; el_def=0; }; args { name="args"; el_typ=ProgVar; el_def=0; ProgVar @["network"] { name="network"; var_type=T_Object; object_type=LeabraNetwork; object_val=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|EDIT_VAL; reference=0; desc="network to train"; init_from=NULL; }; }; vars { name="vars"; el_typ=ProgVar; el_def=0; ProgVar @["i"] { name="i"; var_type=T_Int; int_val=19; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["j"] { name="j"; var_type=T_Int; int_val=21; objs_ptr=0; flags=NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["B_NoGoR1"] { name="B_NoGoR1"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["B_NoGoR2"] { name="B_NoGoR2"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["B_GoR2"] { name="B_GoR2"; var_type=T_Real; real_val=2.096025943756104; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["B_GoR1"] { name="B_GoR1"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["A_NoGoR2"] { name="A_NoGoR2"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["A_GoR2"] { name="A_GoR2"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["A_NoGoR1"] { name="A_NoGoR1"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["A_GoR1"] { name="A_GoR1"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["gn_pos"] { name="gn_pos"; var_type=T_Real; real_val=2.096025943756104; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["nogo_pos"] { name="nogo_pos"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["nogo_neg"] { name="nogo_neg"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["gn_neg"] { name="gn_neg"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["gn_A_R1"] { name="gn_A_R1"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["gn_B_R1"] { name="gn_B_R1"; var_type=T_Real; real_val=0; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc=; init_from=NULL; }; ProgVar @["out_data"] { name="out_data"; var_type=T_Object; object_type=DataTable; object_val=$.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo"]$; objs_ptr=0; flags=CTRL_PANEL|NULL_CHECK|SAVE_VAL|USED|EDIT_VAL; reference=0; desc="datatable with training patterns"; init_from=NULL; }; }; functions { name="functions"; el_typ=Function; el_def=0; }; init_code { name="init_code"; el_typ=ProgCode; el_def=0; ResetDataRows @[0] { desc=; flags=0; orig_prog_code=; data_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["out_data"]$$; }; }; prog_code { name="prog_code"; el_typ=ProgCode; el_def=0; AssignExpr @[0] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["A_GoR1"]$$; expr { expr="0"; }; }; AssignExpr @[1] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["B_GoR1"]$$; expr { expr="0"; }; }; AssignExpr @[2] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["A_GoR2"]$$; expr { expr="0"; }; }; AssignExpr @[3] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["B_GoR2"]$$; expr { expr="0"; }; }; AssignExpr @[4] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["A_NoGoR1"]$$; expr { expr="0"; }; }; AssignExpr @[5] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["B_NoGoR1"]$$; expr { expr="0"; }; }; AssignExpr @[6] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["A_NoGoR2"]$$; expr { expr="0"; }; }; AssignExpr @[7] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["B_NoGoR2"]$$; expr { expr="0"; }; }; AssignExpr @[8] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["gn_A_R1"]$$; expr { expr="0"; }; }; AssignExpr @[9] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["gn_pos"]$$; expr { expr="0"; }; }; AssignExpr @[10] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["gn_B_R1"]$$; expr { expr="0"; }; }; AssignExpr @[11] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["gn_neg"]$$; expr { expr="0"; }; }; AssignExpr @[12] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["nogo_pos"]$$; expr { expr="0"; }; }; AssignExpr @[13] { desc=; flags=0; orig_prog_code=; result_var=.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["nogo_neg"]$$; expr { expr="0"; }; }; ForLoop @[14] { desc="loop over Go R1 units"; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ForLoop @[0] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; VarIncr @[0] { desc=; flags=0; orig_prog_code=; var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["A_GoR1"]$; expr { expr=".programs.ActBasedRField_Go.ActRFDataGo.Input.GetValAsFloatM(i,j)"; }; }; }; init { expr="j = 0"; }; test { expr="j < 20"; }; iter { expr="j=j+5"; }; }; }; init { expr="i = 0"; }; test { expr="i < 18"; }; iter { expr="i=i+2"; }; }; ForLoop @[15] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ForLoop @[0] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; VarIncr @[0] { desc=; flags=0; orig_prog_code=; var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["A_GoR2"]$; expr { expr=" .programs.ActBasedRField_Go.ActRFDataGo.Input.GetValAsFloatM(i,j)"; }; }; }; init { expr="j = 0"; }; test { expr="j < 20"; }; iter { expr="j=j+5"; }; }; }; init { expr="i = 1"; }; test { expr="i < 18"; }; iter { expr="i=i+2"; }; }; ForLoop @[16] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ForLoop @[0] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; VarIncr @[0] { desc=; flags=0; orig_prog_code=; var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["B_GoR1"]$; expr { expr=" .programs.ActBasedRField_Go.ActRFDataGo.Input.GetValAsFloatM(i,j)"; }; }; }; init { expr="j = 1"; }; test { expr="j < 20"; }; iter { expr="j=j+5"; }; }; }; init { expr="i = 0"; }; test { expr="i < 18"; }; iter { expr="i=i+2"; }; }; ForLoop @[17] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ForLoop @[0] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; VarIncr @[0] { desc=; flags=0; orig_prog_code=; var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["B_GoR2"]$; expr { expr=" .programs.ActBasedRField_Go.ActRFDataGo.Input.GetValAsFloatM(i,j)"; }; }; }; init { expr="j = 1"; }; test { expr="j < 20"; }; iter { expr="j=j+5"; }; }; }; init { expr="i = 1"; }; test { expr="i < 18"; }; iter { expr="i=i+2"; }; }; ForLoop @[18] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ForLoop @[0] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; VarIncr @[0] { desc=; flags=0; orig_prog_code=; var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["A_NoGoR1"]$; expr { expr=" .programs.ActBasedRField_NoGo.ActRFDataNoGo.Input.GetValAsFloatM(i,j)"; }; }; }; init { expr="j = 0"; }; test { expr="j < 20"; }; iter { expr="j=j+5"; }; }; }; init { expr="i = 0"; }; test { expr="i < 18"; }; iter { expr="i=i+2"; }; }; ForLoop @[19] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ForLoop @[0] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; VarIncr @[0] { desc=; flags=0; orig_prog_code=; var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["A_NoGoR2"]$; expr { expr=" .programs.ActBasedRField_NoGo.ActRFDataNoGo.Input.GetValAsFloatM(i,j)"; }; }; }; init { expr="j = 0"; }; test { expr="j < 20"; }; iter { expr="j=j+5"; }; }; }; init { expr="i = 1"; }; test { expr="i < 18"; }; iter { expr="i=i+2"; }; }; ForLoop @[20] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ForLoop @[0] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; VarIncr @[0] { desc=; flags=0; orig_prog_code=; var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["B_NoGoR1"]$; expr { expr=" .programs.ActBasedRField_NoGo.ActRFDataNoGo.Input.GetValAsFloatM(i,j)"; }; }; }; init { expr="j = 1"; }; test { expr="j < 20"; }; iter { expr="j=j+5"; }; }; }; init { expr="i = 0"; }; test { expr="i < 18"; }; iter { expr="i=i+2"; }; }; ForLoop @[21] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; ForLoop @[0] { desc=; flags=0; orig_prog_code=; loop_code { name=; el_typ=ProgCode; el_def=0; VarIncr @[0] { desc=; flags=0; orig_prog_code=; var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["B_NoGoR2"]$; expr { expr=" .programs.ActBasedRField_NoGo.ActRFDataNoGo.Input.GetValAsFloatM(i,j)"; }; }; }; init { expr="j = 1"; }; test { expr="j < 20"; }; iter { expr="j=j+5"; }; }; }; init { expr="i = 1"; }; test { expr="i < 18"; }; iter { expr="i=i+2"; }; }; AssignExpr @[22] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["gn_pos"]$; expr { expr="(A_GoR1 - A_NoGoR1) + (B_GoR2 - B_NoGoR2)"; }; }; AssignExpr @[23] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["nogo_neg"]$; expr { expr="B_NoGoR1 + A_NoGoR2"; }; }; AssignExpr @[24] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["gn_neg"]$; expr { expr="(B_GoR1 - B_NoGoR1) + (A_GoR2 - A_NoGoR2)"; }; }; AssignExpr @[25] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["nogo_pos"]$; expr { expr=" B_NoGoR2 + A_NoGoR1"; }; }; AssignExpr @[26] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["gn_A_R1"]$; expr { expr="(A_GoR1 - A_NoGoR1)"; }; }; AssignExpr @[27] { desc=; flags=0; orig_prog_code=; result_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["gn_B_R1"]$; expr { expr="B_GoR1 - B_NoGoR1"; }; }; AddNewDataRow @[28] { desc=; flags=0; orig_prog_code=; data_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["out_data"]$; }; DataVarProg @[29] { desc=; flags=0; orig_prog_code=; data_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["out_data"]$; row_spec=CUR_ROW; row_var=NULL; set_data=1; all_matches=0; quiet=0; var_1=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["gn_pos"]$; var_2=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["gn_neg"]$; var_3=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["nogo_pos"]$; var_4=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["nogo_neg"]$; }; DoneWritingDataRow @[30] { desc=; flags=0; orig_prog_code=; data_var=$.projects["BG_PS_inhib_e7"].programs.gp["LeabraAll_Std"]["Calc_GoNoGo"].vars["out_data"]$; }; }; step_prog=NULL; step_n=1; }; }; }; viewers { name="viewers"; el_typ=MainWindowViewer; el_def=0; MainWindowViewer @["Browser"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["view_win_lft"] { name="view_win_lft"; value 6 0=0.0833333358168602; val_type_fixed=0; }; UserDataItem @["view_win_top"] { name="view_win_top"; value 6 0=0.05676328390836716; val_type_fixed=0; }; UserDataItem @["view_win_wd"] { name="view_win_wd"; value 6 0=1; val_type_fixed=0; }; UserDataItem @["view_win_ht"] { name="view_win_ht"; value 6 0=0.7983092069625854; val_type_fixed=0; }; UserDataItem @["view_win_iconified"] { name="view_win_iconified"; value 1 0=0; val_type_fixed=0; }; UserDataItem @["view_splitter_state"] { name="view_splitter_state"; value 9 0="AAAA/wAAAAEAAAADAAABgAAAAXQAAAJTAQAAAAYBAAAAAQE="; val_type_fixed=0; }; }; name="Browser"; m_data=.projects["BG_PS_inhib_e7"]$$; visible=1; win_name=".projects[\"BG_PS_inhib_632\"] - BG_PS_inhib_e7.proj"; m_is_root=0; m_is_viewer_xor_browser=0; m_is_proj_viewer=1; m_is_dialog=0; toolbars { name="toolbars"; el_typ=ToolBar; el_def=0; ToolBar @["Application"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["view_win_visible"] { name="view_win_visible"; value 1 0=1; val_type_fixed=0; }; }; name="Application"; m_data=NULL; visible=0; lft=0; top=0; o=Horizontal; }; }; frames { name="frames"; el_typ=BrowseViewerTaBase; el_def=0; BrowseViewerTaBase @["Tree"] { name="Tree"; m_data=NULL; visible=1; root_typ=LeabraProject; root_md=NULL; m_root=$.projects["BG_PS_inhib_e7"]$; }; PanelViewer @["Panels"] { name="Panels"; m_data=NULL; visible=1; }; T3PanelViewer @["T3Frames"] { UserDataItem_List @*(.user_data_) { name="UserDataItem_List_76"; el_typ=UserDataItem; el_def=0; UserDataItem @["view_panel_selected"] { name="view_panel_selected"; value 1 0=1; val_type_fixed=0; }; }; name="T3Frames"; m_data=NULL; visible=1; panels { name="panels"; el_typ=T3Panel; el_def=0; T3Panel @["Frame2"] { name="Frame2"; m_data=NULL; visible=1; root_view { name="root_view"; m_data=NULL; m_transform=NULL; children { name="children"; el_typ=NetView; el_def=0; NetView @["BGNet_View"] { name="BGNet_View"; m_data=$.projects["BG_PS_inhib_e7"].networks["BGNet"]$; taTransform @*(.m_transform) {scale={x=0.962418: y=0.9624187: z=0.9624187: }: rotate={x=1: y=0: z=0: rot=0.35: }: translate={x=3.067723e-8: y=-9.349009e-9: z=2.074376e-8: }: }; main_xform {scale={x=0.962418: y=0.9624187: z=0.9624187: }: rotate={x=1: y=0: z=0: rot=0.35: }: translate={x=3.067723e-8: y=-9.349009e-9: z=2.074376e-8: }: }; annotations { name="annotations"; el_typ=T3Annotation; el_def=0; }; annote_children { name="annote_children"; el_typ=T3DataView; el_def=0; }; display=1; lay_layout=THREE_D; lay_mv=1; net_text=1; show_iconified=0; net_text_xform {scale={x=0: y=0: z=0: }: rotate={x=1: y=0: z=0: rot=0: }: translate={x=0: y=-0.5: z=0: }: }; net_text_rot=0; cur_unit_vals{ act; }; unit_src_path=".layers[5].units[2]"; con_type=ANY_CON; hist_idx=0; hist_save=1; hist_max=100; hist_ff=5; unit_disp_mode=UDM_CYLINDER; unit_text_disp=UTD_NONE; max_size {x=14: y=9: z=13.07143: }; max_size2d {x=10: y=38: z=1: }; eff_max_size {x=14: y=9: z=13.07143: }; font_sizes { net_name=0.05; net_vals=0.05; layer=0.045; layer_min=0.01; layer_vals=0.03; prjn=0.01; unit=0.0185; un_nm_len=3; }; view_params { xy_square=0; unit_spacing=0.05; prjn_disp=L_R_F; prjn_name=0; prjn_width=0.0014; prjn_trans=0.5; lay_trans=0.5; unit_trans=0.6; laygp_width=1; show_laygp=1; }; wt_line_disp=0; wt_line_width=3; wt_line_thr=0.5; wt_line_swt=1; wt_prjn_k_un=4; wt_prjn_k_gp=1; wt_prjn_lay=NULL; snap_bord_disp=0; snap_bord_width=4; scale { name="scale"; chunks=133; min=-1; max=1; range=1; zero=0; spec=.colorspecs["C_ColdHot"]$$; auto_scale=0; }; scale_ranges { name="scale_ranges"; el_typ=ScaleRange; el_def=0; ScaleRange @[0] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[1] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[2] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[3] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[4] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[5] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[6] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[7] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[8] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[9] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[10] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[11] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[12] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[13] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[14] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[15] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[16] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[17] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[18] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[19] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[20] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[21] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[22] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[23] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[24] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[25] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[26] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[27] { var_name=; auto_scale=0; min=0; max=0; }; ScaleRange @[28] { var_name="act"; auto_scale=0; min=-1; max=1; }; ScaleRange @[29] { var_name="r.wt"; auto_scale=0; min=-0.8099999; max=0.8099999; }; ScaleRange @[30] { var_name="act_m"; auto_scale=0; min=-1; max=1; }; ScaleRange @[31] { var_name="act_p"; auto_scale=0; min=-1; max=1; }; ScaleRange @[32] { var_name="ext"; auto_scale=0; min=-1; max=1; }; ScaleRange @[33] { var_name="net"; auto_scale=0; min=-1; max=1; }; ScaleRange @[34] { var_name="act_eq"; auto_scale=0; min=-1; max=1; }; ScaleRange @[35] { var_name="act_avg"; auto_scale=0; min=-1; max=1; }; ScaleRange @[36] { var_name="act_dif"; auto_scale=0; min=-1; max=1; }; ScaleRange @[37] { var_name="da"; auto_scale=0; min=-1; max=1; }; ScaleRange @[38] { var_name="vcb.hyst"; auto_scale=0; min=-1; max=1; }; ScaleRange @[39] { var_name="vcb.acc"; auto_scale=0; min=-1; max=1; }; ScaleRange @[40] { var_name="s.wt"; auto_scale=0; min=-1; max=1; }; ScaleRange @[41] { var_name="targ"; auto_scale=0; min=-1; max=1; }; ScaleRange @[42] { var_name="r.pdw"; auto_scale=0; min=-1; max=1; }; ScaleRange @[43] { var_name="wt_prjn"; auto_scale=0; min=-1; max=1; }; ScaleRange @[44] { var_name="bias.pdw"; auto_scale=0; min=-1; max=1; }; ScaleRange @[45] { var_name="gc.l"; auto_scale=0; min=-1; max=1; }; ScaleRange @[46] { var_name="gc.i"; auto_scale=0; min=-1; max=1; }; ScaleRange @[47] { var_name="gc.h"; auto_scale=0; min=-1; max=1; }; ScaleRange @[48] { var_name="gc.a"; auto_scale=0; min=-1; max=1; }; ScaleRange @[49] { var_name="I_net"; auto_scale=0; min=-1; max=1; }; ScaleRange @[50] { var_name="v_m"; auto_scale=0; min=-1; max=1; }; ScaleRange @[51] { var_name="i_thr"; auto_scale=0; min=-1; max=1; }; ScaleRange @[52] { var_name="spk_amp"; auto_scale=0; min=-1; max=1; }; ScaleRange @[53] { var_name="s.pdw"; auto_scale=0; min=-1; max=1; }; ScaleRange @[54] { var_name="bias.wt"; auto_scale=0; min=-1; max=1; }; ScaleRange @[55] { var_name="dav"; auto_scale=0; min=-1; max=1; }; }; lay_disp_modes{ Input=0;SNc=0;GP_Int=0;GP_Ext=0;Thalamus=0;Motor_Cortex=0;Output=0;STN=0;Go=-1;NoGo=-1;Striatum_Inhib=0; }; }; }; }; bg_color {r=0.8: g=0.8: b=0.8: a=1: }; text_color {r=0: g=0: b=0: a=1: }; headlight_on=1; stereo_view=STEREO_NONE; saved_views { name="saved_views"; el_typ=T3SavedView; el_def=0; T3SavedView @["Vw_0"] { name="Vw_0"; view_saved=1; pos {x=0.4427123: y=0.8285681: z=2.69489: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=2.777859; }; T3SavedView @["Vw_1"] { name="Vw_1"; view_saved=1; pos {x=0.5427123: y=0.8647809: z=1.851591: }; orient {x=-1.000029: y=0: z=0: rot=0.05999531: }; focal_dist=1.938047; }; T3SavedView @["Vw_2"] { name="Vw_2"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_3"] { name="Vw_3"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_4"] { name="Vw_4"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_5"] { name="Vw_5"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_6"] { name="Vw_6"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_7"] { name="Vw_7"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_8"] { name="Vw_8"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_9"] { name="Vw_9"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; }; }; T3Panel @["CycleOutputData"] { name="CycleOutputData"; m_data=NULL; visible=1; root_view { name="root_view"; m_data=NULL; m_transform=NULL; children { name="children"; el_typ=GraphTableView; el_def=0; GraphTableView @["CycleOutputData_Graph"] { name="CycleOutputData_Graph"; m_data=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"]$; taTransform @*(.m_transform) {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; children { name="children"; el_typ=GraphColView; el_def=0; GraphColView @["batch"] { name="batch"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["batch"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["epoch"] { name="epoch"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["epoch"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["trial"] { name="trial"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["trial"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["trial_name"] { name="trial_name"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["trial_name"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["group_name"] { name="group_name"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["group_name"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["phase_no"] { name="phase_no"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["phase_no"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["cycle"] { name="cycle"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["cycle"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["sse"] { name="sse"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["sse"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["ext_rew"] { name="ext_rew"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["ext_rew"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["STN_acts_avg"] { name="STN_acts_avg"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["STN_acts_avg"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["Motor__acts_avg"] { name="Motor__acts_avg"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["Motor__acts_avg"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["Thalam_acts_avg"] { name="Thalam_acts_avg"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["Thalam_acts_avg"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["GP_Int_acts_avg"] { name="GP_Int_acts_avg"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["GP_Int_acts_avg"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["GP_Ext_acts_avg"] { name="GP_Ext_acts_avg"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["GP_Ext_acts_avg"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["Output_act"] { name="Output_act"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["Output_act"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["Output_units_0_act"] { name="Output_units_0_act"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["CycleOutputData"].data["Output_units_0_act"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; }; main_xform {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; annotations { name="annotations"; el_typ=T3Annotation; el_def=0; }; annote_children { name="annote_children"; el_typ=T3DataView; el_def=0; }; view_rows=10000; view_range {min=0: max=-1: }; display_on=1; manip_ctrl_on=1; graph_type=XY; plot_style=LINE; negative_draw=0; negative_draw_z=1; line_width=2; point_size=0.01; point_spacing=1; bar_space=0.2; bar_depth=0.01; label_spacing=-1; width=1; depth=1; axis_font_size=0.05; label_font_size=0.04; x_axis { name="x_axis"; m_data=NULL; m_transform=NULL; on=1; axis=X; col_name="cycle"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=1: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; z_axis { name="z_axis"; m_data=NULL; m_transform=NULL; on=1; axis=Z; col_name="batch"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=1: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; tot_plots=16; plots { name="plots"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["CycleOutputData_Graph_plot_1"] { name="CycleOutputData_Graph_plot_1"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="STN_acts_avg"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=1: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_2"] { name="CycleOutputData_Graph_plot_2"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name="Motor__acts_avg"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0.674941: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=SQUARE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_3"] { name="CycleOutputData_Graph_plot_3"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="GP_Int_acts_avg"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=1: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_4"] { name="CycleOutputData_Graph_plot_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name="GP_Ext_acts_avg"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green": r=0: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_5"] { name="CycleOutputData_Graph_plot_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name="Thalam_acts_avg"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=PLUS; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_6"] { name="CycleOutputData_Graph_plot_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CROSS; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_7"] { name="CycleOutputData_Graph_plot_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=STAR; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_8"] { name="CycleOutputData_Graph_plot_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_9"] { name="CycleOutputData_Graph_plot_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_10"] { name="CycleOutputData_Graph_plot_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=SQUARE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_11"] { name="CycleOutputData_Graph_plot_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_12"] { name="CycleOutputData_Graph_plot_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green3": r=0: g=0.8039216: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_13"] { name="CycleOutputData_Graph_plot_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_14"] { name="CycleOutputData_Graph_plot_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=PLUS; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_15"] { name="CycleOutputData_Graph_plot_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CROSS; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_plot_16"] { name="CycleOutputData_Graph_plot_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=STAR; alt_y=0; }; }; errbars { name="errbars"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["CycleOutputData_Graph_err_1"] { name="CycleOutputData_Graph_err_1"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_2"] { name="CycleOutputData_Graph_err_2"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_3"] { name="CycleOutputData_Graph_err_3"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_4"] { name="CycleOutputData_Graph_err_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_5"] { name="CycleOutputData_Graph_err_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_6"] { name="CycleOutputData_Graph_err_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_7"] { name="CycleOutputData_Graph_err_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_8"] { name="CycleOutputData_Graph_err_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_9"] { name="CycleOutputData_Graph_err_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_10"] { name="CycleOutputData_Graph_err_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_11"] { name="CycleOutputData_Graph_err_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_12"] { name="CycleOutputData_Graph_err_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_13"] { name="CycleOutputData_Graph_err_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_14"] { name="CycleOutputData_Graph_err_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_15"] { name="CycleOutputData_Graph_err_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["CycleOutputData_Graph_err_16"] { name="CycleOutputData_Graph_err_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; }; err_spacing=1; err_bar_width=0.02; color_mode=VALUE_COLOR; color_axis { name="color_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; colorscale { name="colorscale"; chunks=133; min=-1; max=1; range=0; zero=0; spec=$.colorspecs["C_ColdHot"]$; auto_scale=0; }; raster_axis { name="raster_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; thresh=0.5; thr_line_len=0.48; matrix_mode=SEP_GRAPHS; mat_layout=BOT_ZERO; mat_odd_vert=1; two_d_font=0; two_d_font_scale=350; }; }; }; bg_color {r=0.8: g=0.8: b=0.8: a=1: }; text_color {r=0: g=0: b=0: a=1: }; headlight_on=1; stereo_view=STEREO_NONE; saved_views { name="saved_views"; el_typ=T3SavedView; el_def=0; T3SavedView @["Vw_0"] { name="Vw_0"; view_saved=1; pos {x=1.365: y=0.445: z=1.437928: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=1.947928; }; T3SavedView @["Vw_1"] { name="Vw_1"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_2"] { name="Vw_2"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_3"] { name="Vw_3"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_4"] { name="Vw_4"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_5"] { name="Vw_5"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_6"] { name="Vw_6"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_7"] { name="Vw_7"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_8"] { name="Vw_8"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_9"] { name="Vw_9"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; }; }; T3Panel @["EpochOutputData"] { name="EpochOutputData"; m_data=NULL; visible=1; root_view { name="root_view"; m_data=NULL; m_transform=NULL; children { name="children"; el_typ=GraphTableView; el_def=0; GraphTableView @["EpochOutputData_Graph"] { name="EpochOutputData_Graph"; m_data=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["EpochOutputData"]$; taTransform @*(.m_transform) {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; children { name="children"; el_typ=GraphColView; el_def=0; GraphColView @["batch"] { name="batch"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["EpochOutputData"].data["batch"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["epoch"] { name="epoch"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["EpochOutputData"].data["epoch"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["avg_sse"] { name="avg_sse"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["EpochOutputData"].data["avg_sse"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["cnt_err"] { name="cnt_err"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["EpochOutputData"].data["cnt_err"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["avg_ext_rew"] { name="avg_ext_rew"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["EpochOutputData"].data["avg_ext_rew"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["avg_cycles"] { name="avg_cycles"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["EpochOutputData"].data["avg_cycles"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; }; main_xform {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; annotations { name="annotations"; el_typ=T3Annotation; el_def=0; }; annote_children { name="annote_children"; el_typ=T3DataView; el_def=0; }; view_rows=10000; view_range {min=0: max=-1: }; display_on=0; manip_ctrl_on=1; graph_type=XY; plot_style=LINE; negative_draw=0; negative_draw_z=1; line_width=2; point_size=0.01; point_spacing=1; bar_space=0.2; bar_depth=0.01; label_spacing=-1; width=1; depth=1; axis_font_size=0.05; label_font_size=0.04; x_axis { name="x_axis"; m_data=NULL; m_transform=NULL; on=1; axis=X; col_name="epoch"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=-1: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=1; }; z_axis { name="z_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Z; col_name="batch"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; tot_plots=16; plots { name="plots"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["EpochOutputData_Graph_plot_1"] { name="EpochOutputData_Graph_plot_1"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="cnt_err"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=1: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_2"] { name="EpochOutputData_Graph_plot_2"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=SQUARE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_3"] { name="EpochOutputData_Graph_plot_3"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_4"] { name="EpochOutputData_Graph_plot_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green3": r=0: g=0.8039216: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_5"] { name="EpochOutputData_Graph_plot_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=PLUS; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_6"] { name="EpochOutputData_Graph_plot_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CROSS; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_7"] { name="EpochOutputData_Graph_plot_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=STAR; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_8"] { name="EpochOutputData_Graph_plot_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_9"] { name="EpochOutputData_Graph_plot_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_10"] { name="EpochOutputData_Graph_plot_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=SQUARE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_11"] { name="EpochOutputData_Graph_plot_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_12"] { name="EpochOutputData_Graph_plot_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green3": r=0: g=0.8039216: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_13"] { name="EpochOutputData_Graph_plot_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_14"] { name="EpochOutputData_Graph_plot_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=PLUS; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_15"] { name="EpochOutputData_Graph_plot_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CROSS; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_plot_16"] { name="EpochOutputData_Graph_plot_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=STAR; alt_y=0; }; }; errbars { name="errbars"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["EpochOutputData_Graph_err_1"] { name="EpochOutputData_Graph_err_1"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_2"] { name="EpochOutputData_Graph_err_2"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_3"] { name="EpochOutputData_Graph_err_3"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_4"] { name="EpochOutputData_Graph_err_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_5"] { name="EpochOutputData_Graph_err_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_6"] { name="EpochOutputData_Graph_err_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_7"] { name="EpochOutputData_Graph_err_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_8"] { name="EpochOutputData_Graph_err_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_9"] { name="EpochOutputData_Graph_err_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_10"] { name="EpochOutputData_Graph_err_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_11"] { name="EpochOutputData_Graph_err_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_12"] { name="EpochOutputData_Graph_err_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_13"] { name="EpochOutputData_Graph_err_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_14"] { name="EpochOutputData_Graph_err_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_15"] { name="EpochOutputData_Graph_err_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["EpochOutputData_Graph_err_16"] { name="EpochOutputData_Graph_err_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; }; err_spacing=1; err_bar_width=0.02; color_mode=VALUE_COLOR; color_axis { name="color_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; colorscale { name="colorscale"; chunks=133; min=-1; max=1; range=0; zero=0; spec=$.colorspecs["C_ColdHot"]$; auto_scale=0; }; raster_axis { name="raster_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; thresh=0.5; thr_line_len=0.48; matrix_mode=SEP_GRAPHS; mat_layout=BOT_ZERO; mat_odd_vert=1; two_d_font=0; two_d_font_scale=350; }; }; }; bg_color {r=0.8: g=0.8: b=0.8: a=1: }; text_color {r=0: g=0: b=0: a=1: }; headlight_on=1; stereo_view=STEREO_NONE; saved_views { name="saved_views"; el_typ=T3SavedView; el_def=0; T3SavedView @["Vw_0"] { name="Vw_0"; view_saved=1; pos {x=1.4275: y=0.445: z=1.624621: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=1.637121; }; T3SavedView @["Vw_1"] { name="Vw_1"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_2"] { name="Vw_2"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_3"] { name="Vw_3"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_4"] { name="Vw_4"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_5"] { name="Vw_5"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_6"] { name="Vw_6"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_7"] { name="Vw_7"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_8"] { name="Vw_8"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_9"] { name="Vw_9"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; }; }; T3Panel @["Go_NoGo"] { name="Go_NoGo"; m_data=NULL; visible=1; root_view { name="root_view"; m_data=NULL; m_transform=NULL; children { name="children"; el_typ=GraphTableView; el_def=0; GraphTableView @["Go_NoGo_Graph"] { name="Go_NoGo_Graph"; m_data=$.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo"]$; taTransform @*(.m_transform) {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; children { name="children"; el_typ=GraphColView; el_def=0; GraphColView @["gn_pos"] { name="gn_pos"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo"].data["gn_pos"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["gn_neg"] { name="gn_neg"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo"].data["gn_neg"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["nogo_pos"] { name="nogo_pos"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo"].data["nogo_pos"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=-1: }; data_range {min=0: max=0: }; }; GraphColView @["nogo_neg"] { name="nogo_neg"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo"].data["nogo_neg"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=12.8298: }; data_range {min=0: max=0: }; }; }; main_xform {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; annotations { name="annotations"; el_typ=T3Annotation; el_def=0; }; annote_children { name="annote_children"; el_typ=T3DataView; el_def=0; }; view_rows=10000; view_range {min=0: max=-1: }; display_on=1; manip_ctrl_on=1; graph_type=XY; plot_style=POINTS; negative_draw=0; negative_draw_z=1; line_width=2; point_size=0.01; point_spacing=1; bar_space=0.2; bar_depth=0.01; label_spacing=-1; width=1; depth=1; axis_font_size=0.05; label_font_size=0.04; x_axis { name="x_axis"; m_data=NULL; m_transform=NULL; on=1; axis=X; col_name="nogo_pos"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=-1: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=1; }; z_axis { name="z_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Z; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; tot_plots=16; plots { name="plots"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["Go_NoGo_Graph_plot_1"] { name="Go_NoGo_Graph_plot_1"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="gn_pos"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=1: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_2"] { name="Go_NoGo_Graph_plot_2"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="gn_neg"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=1: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=SQUARE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_3"] { name="Go_NoGo_Graph_plot_3"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_4"] { name="Go_NoGo_Graph_plot_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green3": r=0: g=0.8039216: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_5"] { name="Go_NoGo_Graph_plot_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=PLUS; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_6"] { name="Go_NoGo_Graph_plot_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CROSS; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_7"] { name="Go_NoGo_Graph_plot_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=STAR; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_8"] { name="Go_NoGo_Graph_plot_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_9"] { name="Go_NoGo_Graph_plot_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_10"] { name="Go_NoGo_Graph_plot_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=SQUARE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_11"] { name="Go_NoGo_Graph_plot_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_12"] { name="Go_NoGo_Graph_plot_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green3": r=0: g=0.8039216: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_13"] { name="Go_NoGo_Graph_plot_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_14"] { name="Go_NoGo_Graph_plot_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=PLUS; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_15"] { name="Go_NoGo_Graph_plot_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CROSS; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_plot_16"] { name="Go_NoGo_Graph_plot_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=STAR; alt_y=0; }; }; errbars { name="errbars"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["Go_NoGo_Graph_err_1"] { name="Go_NoGo_Graph_err_1"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_2"] { name="Go_NoGo_Graph_err_2"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_3"] { name="Go_NoGo_Graph_err_3"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_4"] { name="Go_NoGo_Graph_err_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_5"] { name="Go_NoGo_Graph_err_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_6"] { name="Go_NoGo_Graph_err_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_7"] { name="Go_NoGo_Graph_err_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_8"] { name="Go_NoGo_Graph_err_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_9"] { name="Go_NoGo_Graph_err_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_10"] { name="Go_NoGo_Graph_err_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_11"] { name="Go_NoGo_Graph_err_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_12"] { name="Go_NoGo_Graph_err_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_13"] { name="Go_NoGo_Graph_err_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_14"] { name="Go_NoGo_Graph_err_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_15"] { name="Go_NoGo_Graph_err_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Graph_err_16"] { name="Go_NoGo_Graph_err_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; }; err_spacing=1; err_bar_width=0.02; color_mode=FIXED_COLOR; color_axis { name="color_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; colorscale { name="colorscale"; chunks=133; min=-1; max=1; range=0; zero=0; spec=$.colorspecs["C_ColdHot"]$; auto_scale=0; }; raster_axis { name="raster_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; thresh=0.5; thr_line_len=0.48; matrix_mode=SEP_GRAPHS; mat_layout=BOT_ZERO; mat_odd_vert=1; two_d_font=0; two_d_font_scale=350; }; }; }; bg_color {r=0.8: g=0.8: b=0.8: a=1: }; text_color {r=0: g=0: b=0: a=1: }; headlight_on=1; stereo_view=STEREO_NONE; saved_views { name="saved_views"; el_typ=T3SavedView; el_def=0; T3SavedView @["Vw_0"] { name="Vw_0"; view_saved=1; pos {x=1.515: y=0.445: z=1.727906: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=1.740407; }; T3SavedView @["Vw_1"] { name="Vw_1"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_2"] { name="Vw_2"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_3"] { name="Vw_3"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_4"] { name="Vw_4"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_5"] { name="Vw_5"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_6"] { name="Vw_6"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_7"] { name="Vw_7"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_8"] { name="Vw_8"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_9"] { name="Vw_9"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; }; }; T3Panel @["Go_NoGo_Group"] { name="Go_NoGo_Group"; m_data=NULL; visible=1; root_view { name="root_view"; m_data=NULL; m_transform=NULL; children { name="children"; el_typ=GraphTableView; el_def=0; GraphTableView @["Go_NoGo_Group_Graph"] { name="Go_NoGo_Group_Graph"; m_data=$.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo_Group"]$; taTransform @*(.m_transform) {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; children { name="children"; el_typ=GraphColView; el_def=0; GraphColView @["gn_pos_mean"] { name="gn_pos_mean"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo_Group"].data["gn_pos_mean"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["gn_pos_sem"] { name="gn_pos_sem"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo_Group"].data["gn_pos_sem"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["gn_neg_mean"] { name="gn_neg_mean"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo_Group"].data["gn_neg_mean"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["gn_neg_sem"] { name="gn_neg_sem"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["Go_NoGo_Group"].data["gn_neg_sem"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; }; main_xform {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; annotations { name="annotations"; el_typ=T3Annotation; el_def=0; }; annote_children { name="annote_children"; el_typ=T3DataView; el_def=0; }; view_rows=10000; view_range {min=0: max=0: }; display_on=1; manip_ctrl_on=1; graph_type=XY; plot_style=LINE_AND_POINTS; negative_draw=0; negative_draw_z=0; line_width=2; point_size=0.01; point_spacing=1; bar_space=0.2; bar_depth=0.01; label_spacing=-1; width=1; depth=1; axis_font_size=0.05; label_font_size=0.04; x_axis { name="x_axis"; m_data=NULL; m_transform=NULL; on=1; axis=X; col_name="gn_neg_mean"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=1; }; z_axis { name="z_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Z; col_name="gn_neg_mean"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; tot_plots=16; plots { name="plots"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["Go_NoGo_Group_Graph_plot_1"] { name="Go_NoGo_Group_Graph_plot_1"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="gn_pos_mean"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0.7203014: fix_max=0: max=0.7203014: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_2"] { name="Go_NoGo_Group_Graph_plot_2"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="gn_neg_mean"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=-2.831155: fix_max=0: max=-2.831155: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=SQUARE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_3"] { name="Go_NoGo_Group_Graph_plot_3"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_4"] { name="Go_NoGo_Group_Graph_plot_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green3": r=0: g=0.8039216: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_5"] { name="Go_NoGo_Group_Graph_plot_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=PLUS; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_6"] { name="Go_NoGo_Group_Graph_plot_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CROSS; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_7"] { name="Go_NoGo_Group_Graph_plot_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=STAR; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_8"] { name="Go_NoGo_Group_Graph_plot_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_9"] { name="Go_NoGo_Group_Graph_plot_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_10"] { name="Go_NoGo_Group_Graph_plot_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=SQUARE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_11"] { name="Go_NoGo_Group_Graph_plot_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_12"] { name="Go_NoGo_Group_Graph_plot_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green3": r=0: g=0.8039216: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_13"] { name="Go_NoGo_Group_Graph_plot_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_14"] { name="Go_NoGo_Group_Graph_plot_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=PLUS; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_15"] { name="Go_NoGo_Group_Graph_plot_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CROSS; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_plot_16"] { name="Go_NoGo_Group_Graph_plot_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=STAR; alt_y=0; }; }; errbars { name="errbars"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["Go_NoGo_Group_Graph_err_1"] { name="Go_NoGo_Group_Graph_err_1"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="gn_pos_sem"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_2"] { name="Go_NoGo_Group_Graph_err_2"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="gn_neg_sem"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_3"] { name="Go_NoGo_Group_Graph_err_3"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_4"] { name="Go_NoGo_Group_Graph_err_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_5"] { name="Go_NoGo_Group_Graph_err_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_6"] { name="Go_NoGo_Group_Graph_err_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_7"] { name="Go_NoGo_Group_Graph_err_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_8"] { name="Go_NoGo_Group_Graph_err_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_9"] { name="Go_NoGo_Group_Graph_err_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_10"] { name="Go_NoGo_Group_Graph_err_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_11"] { name="Go_NoGo_Group_Graph_err_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_12"] { name="Go_NoGo_Group_Graph_err_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_13"] { name="Go_NoGo_Group_Graph_err_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_14"] { name="Go_NoGo_Group_Graph_err_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_15"] { name="Go_NoGo_Group_Graph_err_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["Go_NoGo_Group_Graph_err_16"] { name="Go_NoGo_Group_Graph_err_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; }; err_spacing=1; err_bar_width=0.02; color_mode=FIXED_COLOR; color_axis { name="color_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; colorscale { name="colorscale"; chunks=133; min=-1; max=1; range=0; zero=0; spec=$.colorspecs["C_ColdHot"]$; auto_scale=0; }; raster_axis { name="raster_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; thresh=0.5; thr_line_len=0.48; matrix_mode=SEP_GRAPHS; mat_layout=BOT_ZERO; mat_odd_vert=1; two_d_font=0; two_d_font_scale=350; }; }; }; bg_color {r=0.8: g=0.8: b=0.8: a=1: }; text_color {r=0: g=0: b=0: a=1: }; headlight_on=1; stereo_view=STEREO_NONE; saved_views { name="saved_views"; el_typ=T3SavedView; el_def=0; T3SavedView @["Vw_0"] { name="Vw_0"; view_saved=1; pos {x=1.50125: y=0.445: z=1.810906: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=1.823406; }; T3SavedView @["Vw_1"] { name="Vw_1"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_2"] { name="Vw_2"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_3"] { name="Vw_3"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_4"] { name="Vw_4"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_5"] { name="Vw_5"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_6"] { name="Vw_6"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_7"] { name="Vw_7"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_8"] { name="Vw_8"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_9"] { name="Vw_9"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; }; }; T3Panel @["TrnTestEpochOutputData_Group"] { name="TrnTestEpochOutputData_Group"; m_data=NULL; visible=1; root_view { name="root_view"; m_data=NULL; m_transform=NULL; children { name="children"; el_typ=GraphTableView; el_def=0; GraphTableView @["TrnTestEpochOutputData_Group_Graph"] { name="TrnTestEpochOutputData_Group_Graph"; m_data=$.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["TrnTestEpochOutputData_Group"]$; taTransform @*(.m_transform) {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; children { name="children"; el_typ=GraphColView; el_def=0; GraphColView @["epoch_group"] { name="epoch_group"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["TrnTestEpochOutputData_Group"].data["epoch_group"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["cnt_err_mean"] { name="cnt_err_mean"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["TrnTestEpochOutputData_Group"].data["cnt_err_mean"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["cnt_err_sem"] { name="cnt_err_sem"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["TrnTestEpochOutputData_Group"].data["cnt_err_sem"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["avg_sse_mean"] { name="avg_sse_mean"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["TrnTestEpochOutputData_Group"].data["avg_sse_mean"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["avg_sse_sem"] { name="avg_sse_sem"; m_data=.projects["BG_PS_inhib_e7"].data.gp["AnalysisData"]["TrnTestEpochOutputData_Group"].data["avg_sse_sem"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; }; main_xform {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; annotations { name="annotations"; el_typ=T3Annotation; el_def=0; }; annote_children { name="annote_children"; el_typ=T3DataView; el_def=0; }; view_rows=10000; view_range {min=0: max=10: }; display_on=1; manip_ctrl_on=1; graph_type=XY; plot_style=LINE; negative_draw=0; negative_draw_z=1; line_width=2; point_size=0.01; point_spacing=1; bar_space=0.2; bar_depth=0.01; label_spacing=-1; width=1; depth=1; axis_font_size=0.05; label_font_size=0.04; x_axis { name="x_axis"; m_data=NULL; m_transform=NULL; on=1; axis=X; col_name="epoch_group"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=10: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; z_axis { name="z_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Z; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; tot_plots=16; plots { name="plots"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_1"] { name="TrnTestEpochOutputData_Group_Graph_plot_1"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="cnt_err_mean"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0.72: fix_max=0: max=1.88: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_2"] { name="TrnTestEpochOutputData_Group_Graph_plot_2"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=SQUARE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_3"] { name="TrnTestEpochOutputData_Group_Graph_plot_3"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_4"] { name="TrnTestEpochOutputData_Group_Graph_plot_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green3": r=0: g=0.8039216: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_5"] { name="TrnTestEpochOutputData_Group_Graph_plot_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=PLUS; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_6"] { name="TrnTestEpochOutputData_Group_Graph_plot_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CROSS; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_7"] { name="TrnTestEpochOutputData_Group_Graph_plot_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=STAR; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_8"] { name="TrnTestEpochOutputData_Group_Graph_plot_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_9"] { name="TrnTestEpochOutputData_Group_Graph_plot_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_10"] { name="TrnTestEpochOutputData_Group_Graph_plot_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=SQUARE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_11"] { name="TrnTestEpochOutputData_Group_Graph_plot_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_12"] { name="TrnTestEpochOutputData_Group_Graph_plot_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green3": r=0: g=0.8039216: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_13"] { name="TrnTestEpochOutputData_Group_Graph_plot_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_14"] { name="TrnTestEpochOutputData_Group_Graph_plot_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=PLUS; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_15"] { name="TrnTestEpochOutputData_Group_Graph_plot_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CROSS; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_plot_16"] { name="TrnTestEpochOutputData_Group_Graph_plot_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=STAR; alt_y=0; }; }; errbars { name="errbars"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_1"] { name="TrnTestEpochOutputData_Group_Graph_err_1"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="cnt_err_sem"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_2"] { name="TrnTestEpochOutputData_Group_Graph_err_2"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_3"] { name="TrnTestEpochOutputData_Group_Graph_err_3"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_4"] { name="TrnTestEpochOutputData_Group_Graph_err_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_5"] { name="TrnTestEpochOutputData_Group_Graph_err_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_6"] { name="TrnTestEpochOutputData_Group_Graph_err_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_7"] { name="TrnTestEpochOutputData_Group_Graph_err_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_8"] { name="TrnTestEpochOutputData_Group_Graph_err_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_9"] { name="TrnTestEpochOutputData_Group_Graph_err_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_10"] { name="TrnTestEpochOutputData_Group_Graph_err_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_11"] { name="TrnTestEpochOutputData_Group_Graph_err_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_12"] { name="TrnTestEpochOutputData_Group_Graph_err_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_13"] { name="TrnTestEpochOutputData_Group_Graph_err_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_14"] { name="TrnTestEpochOutputData_Group_Graph_err_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_15"] { name="TrnTestEpochOutputData_Group_Graph_err_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Group_Graph_err_16"] { name="TrnTestEpochOutputData_Group_Graph_err_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; }; err_spacing=1; err_bar_width=0.02; color_mode=FIXED_COLOR; color_axis { name="color_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; colorscale { name="colorscale"; chunks=133; min=-1; max=1; range=0; zero=0; spec=$.colorspecs["C_ColdHot"]$; auto_scale=0; }; raster_axis { name="raster_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; thresh=0.5; thr_line_len=0.48; matrix_mode=SEP_GRAPHS; mat_layout=BOT_ZERO; mat_odd_vert=1; two_d_font=0; two_d_font_scale=350; }; }; }; bg_color {r=0.8: g=0.8: b=0.8: a=1: }; text_color {r=0: g=0: b=0: a=1: }; headlight_on=1; stereo_view=STEREO_NONE; saved_views { name="saved_views"; el_typ=T3SavedView; el_def=0; T3SavedView @["Vw_0"] { name="Vw_0"; view_saved=1; pos {x=1.46: y=0.46: z=1.850539: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=1.850539; }; T3SavedView @["Vw_1"] { name="Vw_1"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_2"] { name="Vw_2"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_3"] { name="Vw_3"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_4"] { name="Vw_4"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_5"] { name="Vw_5"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_6"] { name="Vw_6"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_7"] { name="Vw_7"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_8"] { name="Vw_8"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_9"] { name="Vw_9"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; }; }; T3Panel @["TrnTestEpochOutputData"] { name="TrnTestEpochOutputData"; m_data=NULL; visible=1; root_view { name="root_view"; m_data=NULL; m_transform=NULL; children { name="children"; el_typ=GraphTableView; el_def=0; GraphTableView @["TrnTestEpochOutputData_Graph"] { name="TrnTestEpochOutputData_Graph"; m_data=$.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestEpochOutputData"]$; taTransform @*(.m_transform) {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; children { name="children"; el_typ=GraphColView; el_def=0; GraphColView @["batch"] { name="batch"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestEpochOutputData"].data["batch"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["epoch"] { name="epoch"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestEpochOutputData"].data["epoch"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["avg_sse"] { name="avg_sse"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestEpochOutputData"].data["avg_sse"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["cnt_err"] { name="cnt_err"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestEpochOutputData"].data["cnt_err"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["avg_ext_rew"] { name="avg_ext_rew"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestEpochOutputData"].data["avg_ext_rew"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; GraphColView @["avg_cycles"] { name="avg_cycles"; m_data=.projects["BG_PS_inhib_e7"].data.gp["OutputData"]["TrnTestEpochOutputData"].data["avg_cycles"]$$; m_transform=NULL; visible=1; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; data_range {min=0: max=0: }; }; }; main_xform {scale={x=1: y=1: z=1: }: rotate={x=0: y=0: z=1: rot=0: }: translate={x=1: y=0: z=0: }: }; annotations { name="annotations"; el_typ=T3Annotation; el_def=0; }; annote_children { name="annote_children"; el_typ=T3DataView; el_def=0; }; view_rows=10000; view_range {min=0: max=-1: }; display_on=1; manip_ctrl_on=1; graph_type=XY; plot_style=LINE; negative_draw=0; negative_draw_z=1; line_width=2; point_size=0.01; point_spacing=1; bar_space=0.2; bar_depth=0.01; label_spacing=-1; width=1; depth=1; axis_font_size=0.05; label_font_size=0.04; x_axis { name="x_axis"; m_data=NULL; m_transform=NULL; on=1; axis=X; col_name="epoch"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=1: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; z_axis { name="z_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Z; col_name="batch"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; tot_plots=16; plots { name="plots"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_1"] { name="TrnTestEpochOutputData_Graph_plot_1"; m_data=NULL; m_transform=NULL; on=1; axis=Y; col_name="cnt_err"; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=1: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_2"] { name="TrnTestEpochOutputData_Graph_plot_2"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=SQUARE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_3"] { name="TrnTestEpochOutputData_Graph_plot_3"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_4"] { name="TrnTestEpochOutputData_Graph_plot_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green3": r=0: g=0.8039216: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_5"] { name="TrnTestEpochOutputData_Graph_plot_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=PLUS; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_6"] { name="TrnTestEpochOutputData_Graph_plot_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CROSS; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_7"] { name="TrnTestEpochOutputData_Graph_plot_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=STAR; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_8"] { name="TrnTestEpochOutputData_Graph_plot_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_9"] { name="TrnTestEpochOutputData_Graph_plot_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_10"] { name="TrnTestEpochOutputData_Graph_plot_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="red": r=1: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=SQUARE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_11"] { name="TrnTestEpochOutputData_Graph_plot_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="blue": r=0: g=0: b=1: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=DIAMOND; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_12"] { name="TrnTestEpochOutputData_Graph_plot_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="green3": r=0: g=0.8039216: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_UP; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_13"] { name="TrnTestEpochOutputData_Graph_plot_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="purple": r=0.627451: g=0.1254902: b=0.9411765: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=TRIANGLE_DN; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_14"] { name="TrnTestEpochOutputData_Graph_plot_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="orange": r=1: g=0.6470588: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=PLUS; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_15"] { name="TrnTestEpochOutputData_Graph_plot_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="brown": r=0.6470588: g=0.1647059: b=0.1647059: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=CROSS; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_plot_16"] { name="TrnTestEpochOutputData_Graph_plot_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="chartreuse": r=0.4980392: g=1: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=DOT; point_style=STAR; alt_y=0; }; }; errbars { name="errbars"; el_typ=GraphPlotView; el_def=0; GraphPlotView @["TrnTestEpochOutputData_Graph_err_1"] { name="TrnTestEpochOutputData_Graph_err_1"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_2"] { name="TrnTestEpochOutputData_Graph_err_2"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_3"] { name="TrnTestEpochOutputData_Graph_err_3"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_4"] { name="TrnTestEpochOutputData_Graph_err_4"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_5"] { name="TrnTestEpochOutputData_Graph_err_5"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_6"] { name="TrnTestEpochOutputData_Graph_err_6"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_7"] { name="TrnTestEpochOutputData_Graph_err_7"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_8"] { name="TrnTestEpochOutputData_Graph_err_8"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_9"] { name="TrnTestEpochOutputData_Graph_err_9"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_10"] { name="TrnTestEpochOutputData_Graph_err_10"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_11"] { name="TrnTestEpochOutputData_Graph_err_11"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_12"] { name="TrnTestEpochOutputData_Graph_err_12"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_13"] { name="TrnTestEpochOutputData_Graph_err_13"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_14"] { name="TrnTestEpochOutputData_Graph_err_14"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_15"] { name="TrnTestEpochOutputData_Graph_err_15"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; GraphPlotView @["TrnTestEpochOutputData_Graph_err_16"] { name="TrnTestEpochOutputData_Graph_err_16"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; line_style=SOLID; point_style=CIRCLE; alt_y=0; }; }; err_spacing=1; err_bar_width=0.02; color_mode=VALUE_COLOR; color_axis { name="color_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; colorscale { name="colorscale"; chunks=133; min=-1; max=1; range=0; zero=0; spec=$.colorspecs["C_ColdHot"]$; auto_scale=0; }; raster_axis { name="raster_axis"; m_data=NULL; m_transform=NULL; on=0; axis=Y; col_name=; is_string=0; is_matrix=0; n_cells=1; matrix_cell=0; fixed_range {fix_min=0: min=0: fix_max=0: max=0: }; color {name="black": r=0: g=0: b=0: a=1: desc="": }; n_ticks=10; axis_length=1; row_num=0; }; thresh=0.5; thr_line_len=0.48; matrix_mode=SEP_GRAPHS; mat_layout=BOT_ZERO; mat_odd_vert=1; two_d_font=0; two_d_font_scale=350; }; }; }; bg_color {r=0.8: g=0.8: b=0.8: a=1: }; text_color {r=0: g=0: b=0: a=1: }; headlight_on=1; stereo_view=STEREO_NONE; saved_views { name="saved_views"; el_typ=T3SavedView; el_def=0; T3SavedView @["Vw_0"] { name="Vw_0"; view_saved=1; pos {x=1.383511: y=0.445: z=1.418609: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=1.928609; }; T3SavedView @["Vw_1"] { name="Vw_1"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_2"] { name="Vw_2"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_3"] { name="Vw_3"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_4"] { name="Vw_4"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_5"] { name="Vw_5"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_6"] { name="Vw_6"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_7"] { name="Vw_7"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_8"] { name="Vw_8"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; T3SavedView @["Vw_9"] { name="Vw_9"; view_saved=0; pos {x=0: y=0: z=0: }; orient {x=0: y=0: z=1: rot=0: }; focal_dist=0; }; }; }; }; }; }; docks { name="docks"; el_typ=ToolBoxDockViewer; el_def=0; ToolBoxDockViewer @["Tools"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["view_win_lft"] { name="view_win_lft"; value 6 0=0; val_type_fixed=0; }; UserDataItem @["view_win_top"] { name="view_win_top"; value 6 0=0.01086956541985273; val_type_fixed=0; }; UserDataItem @["view_win_wd"] { name="view_win_wd"; value 6 0=0.05347222089767456; val_type_fixed=0; }; UserDataItem @["view_win_ht"] { name="view_win_ht"; value 6 0=0.7101449370384216; val_type_fixed=0; }; UserDataItem @["view_win_iconified"] { name="view_win_iconified"; value 1 0=0; val_type_fixed=0; }; UserDataItem @["view_visible"] { name="view_visible"; value 1 0=1; val_type_fixed=0; }; }; name="Tools"; m_data=NULL; visible=1; win_name=; dock_flags=DV_MOVABLE|DV_FLOATABLE; dock_area=1; }; }; }; }; save_view=1; save_as_only=0; auto_name=1; last_change_desc=" "; networks { name="networks"; el_typ=LeabraNetwork; el_def=0; LeabraNetwork @["BGNet"] { UserDataItem_List @*(.user_data_) { name=; el_typ=UserDataItem; el_def=0; UserDataItem @["cos_diff"] { name="cos_diff"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["cos_err"] { name="cos_err"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["norm_err"] { name="norm_err"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["ext_rew"] { name="ext_rew"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["maxda"] { name="maxda"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["minus_output_name"] { name="minus_output_name"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["minus_cycles"] { name="minus_cycles"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["ct_cycle"] { name="ct_cycle"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["phase_no"] { name="phase_no"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["phase"] { name="phase"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["sse"] { name="sse"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["output_name"] { name="output_name"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["trial_name"] { name="trial_name"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["group_name"] { name="group_name"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["time"] { name="time"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["cycle"] { name="cycle"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["tick"] { name="tick"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["trial"] { name="trial"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["group"] { name="group"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["epoch"] { name="epoch"; value 1 0=1; val_type_fixed=1; }; UserDataItem @["batch"] { name="batch"; value 1 0=1; val_type_fixed=1; }; }; name="BGNet"; desc=; specs { name="specs"; el_typ=ConSpec; el_def=0; ConSpec @["ConSpec_0"] { name="ConSpec_0"; desc=; unique{ }; children { name="children"; el_typ=ConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0: var=0.5: par=1: }; wt_limits {type=NONE: min=-1: max=1: sym=0: }; }; UniformRndPrjnSpec @["STN_GPe_RndPrjnSpec_0"] { name="STN_GPe_RndPrjnSpec_0"; desc=; unique{ }; children { name="children"; el_typ=UniformRndPrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; p_con=1; sym_self=1; same_seed=0; rndm_seed { name="rndm_seed"; seed{ 1942590695;1834211083;377798523;839440218;-583226373;705799995;-1978402924;1154338458;-462115379;246653898;1399794034;-1499780727;-1523899271;930991332;1290781086;1827104268;-716397506;1983718083;1167094774;951783845;-409479048;-735831888;435869947;-904086293;2026496515;403361634;-1944445990;-1372202487;2126959386;162557442;1012427038;1588232218;-1146450552;-853562653;-1656209805;-1888253373;1759765356;1728652414;-337014879;-1280803374;-575509963;-1765188122;-384524531;-821312351;-1870977276;1513531657;1301908149;699607679;871722190;941230124;480719736;-879564786;-698046303;1521335322;-1447079851;-716252964;526031609;1993676142;1340787872;1530654116;-969427509;1134915315;2122089688;-994370515;560929468;389650548;-1122373860;166734577;-286623372;-120943880;891391534;1880819345;-178283282;540924398;-472340061;2110112996;-1254638769;1538060551;1673190834;691970619;-959237381;-1357813313;1768507679;-1214978919;785612098;1900739683;2119690407;432529262;1597777345;-76740981;1752989913;507595810;1970077571;2120922148;-975091467;-1195485087;-2116172007;-1448521787;-1611468311;1523616406;1943148525;-1864229143;-937095503;-909740123;1292237191;387974384;538406262;509446046;-1972547268;-1733600336;-62144424;-1546025606;-1876304799;1885604132;1402880751;-482628413;1554473651;267768126;-629382805;-1249311349;-1924387261;1461040170;509667270;-779074633;-17507771;918255996;-143015157;-2090640919;315301152;702021484;808635402;-2068859673;-1347883889;1693940293;1805057885;-1668427604;-2137413199;-1104482850;208495526;118430790;-722180698;-1217415633;-224256734;1932248267;-1065779137;-10863097;487580081;-196290919;680669227;1979774005;-2037050706;21949689;-156516075;1715173136;1755205487;1472371560;1309034448;-829238765;-135616049;-2013309212;-1082863329;-899363014;-1287869739;-870456151;581622390;-1908234714;-1126900746;764733716;-925858573;-1751091051;-463341148;644681747;-1914494877;373038127;1588478313;1485299105;661291536;-1180395328;-1144161539;94598643;-1088175949;1032986199;-1100837220;407686955;-1082470443;1911682705;1627415103;310787166;1264015414;424266369;-2027001547;-1752167701;-228113290;1600850810;-2083186300;-1987228633;2000848866;-1395386373;80656148;317238254;-1145747623;-511425939;1346724944;180295410;-544883384;1732680478;-1525854862;236088797;1630557266;1645104332;445726791;1077576696;-2008807651;-2004400849;1274587809;1448655060;1550063216;454064067;-221087611;-594550512;-1272829249;1417249337;463284529;432100395;1078285484;-959540334;21248325;-866258652;-1081481128;-1833368508;-1379133116;-1920337657;-1251994147;1350814969;1508926409;1457463506;-436457777;-104638987;-300707471;-917721278;-620891785;523732153;445406412;1634813528;463926328;1581054136;170598643;-416905380;-1864557289;-202014810;1443533836;-1579728646;-1569783365;398032325;603645793;1459091613;-89353942;-1032688516;-1615894428;-767185823;-1946032362;931360128;-836341533;-1238311242;26872554;-1198342849;223875202;1787898723;1347039535;1426899535;712166878;1007370589;-2121265931;1279068215;1048275580;665564878;-854576448;1115606454;-1938871068;437377701;1893989311;60057612;-1411480578;-1802660403;-1229197402;-1114162509;1246510289;-100045555;-771237462;-321537560;1645429527;876081854;-344012824;613155858;-58817405;150811542;-10210852;2112860797;-528954460;-50850354;-649972970;1499955930;1421666445;1351215729;-1262602010;-980699257;1941355339;-961944897;-413046848;-411502877;522743470;-1432644237;-1120760559;-776500101;-1809149014;2127519490;470896056;662683123;-567303983;121758873;-1581863489;-91906121;-996490915;1435662432;1657906168;-1808273636;-1008367748;1370467542;775127407;336430775;908983458;-1287820551;2018562582;684733517;1364159782;839309547;1634308483;-497817377;118348535;-1269053010;955697418;-461911650;286131813;-300370221;1037538534;2023161463;-259022712;-1784489335;970316778;1578200481;500283714;1165730615;1099858613;850929875;-122366113;1415506233;-119359212;-2033313111;2063284557;168272506;1014246244;1972611072;1049837341;2120277277;-1358473916;867839429;1548671628;375995816;335745466;-92761852;-1313606594;983851877;957484913;-786771928;1174167013;457619777;1577173252;29408666;-1853196004;-954511750;-9741238;1764765760;-1106091459;418868525;1218646124;244543749;1280742435;-1669454769;1391623016;-1782787888;1672996012;-660347923;1734104018;-70130822;-1181208948;-285723476;-1959961034;42073851;-1354695576;-548612189;-692983842;1398992433;-1954474622;-414265610;1827986420;-1740813210;392408431;812967600;306150025;1150550306;-1577525793;522329421;-1905599679;1183746118;1873227418;113271279;-118624832;2064640613;91279896;-1296994070;923686864;-1237563925;-671532219;432504743;376157897;-1964026811;-509307951;-1291095292;-92298376;-440266966;742491999;-363297213;907719292;-2097711796;-72292200;797405338;-902353499;-166246906;-943459407;-1618209704;296966888;276718739;881687730;-63517562;-481360418;-1200473828;-144528583;2055425204;425514158;-972984629;-437772543;955225817;-1571664087;1255280381;-1520917476;411210494;-1044569805;1196139168;1000345811;314304961;788619297;-1721237341;1855193732;-688848034;-560160224;110451616;205166806;1045130054;606457223;-106064310;-350539693;-1199925658;-1553567608;1827860289;-495518821;-289479856;-1888403873;66174658;-1741606928;-1734480553;1792669379;2112354548;649961546;-1072485902;1950021075;-145032130;-1448841129;-455451267;-1966366114;-1298920795;837046384;-1783493271;1554055716;544335337;-302006934;-149606522;2022999324;826072250;-549276476;1862748770;1989186214;1089115433;956552701;1745621701;-2034815611;614102796;1479888671;-146686913;-690079684;-1114868597;-2016690506;2090920277;-830594320;-1261017876;2072821639;194345641;-1605828714;484660319;-454560202;1794417171;511341824;-1255389158;-669363423;1164033229;-1107097310;828519990;1450362036;476068860;1972265003;-1879752310;1894610209;-2128722743;1301770305;-1624467838;-731973801;-337476939;-1809040191;1525193216;-2001741915;-2027225998;-1162995606;-717541281;2050620663;-1135005089;2015601957;-1661832271;334966618;-236871560;-2075212969;-2141684690;1078043241;1723366617;828122061;147352703;-1999649046;-903143402;-1024430520;1633016716;-1604804280;1647853874;1626223577;613437415;854959232;-1237163556;-230090669;-278438371;1723117265;500023237;-1216412905;1717506101;1373064296;1994723034;1814828511;2067592941;937637146;-1370177392;-1274587966;-48108349;-378201671;1262614325;62390688;164974972;-830307263;-1714046089;1359544797;2016161042;83584009;930716322;-497279679;2023049077;-206104661;1501245447;562523072;104611198;-46372430;298890283;2110698786;-1091302072;20052267;-1304541777;140132249;-1245355586;-727077616;-316829592;152731111;-154344094;1345278005;-558417490;1281066959;-1469762051;-383552934;199222085;413618054;1552260824;-576003758;105415137;2042323739;1646910169;1084993049;840296744;216680633;1409468883;-1555896089;734078106; }; mti=115; is_gauss_double_cached=0; cached_gauss_double=0; }; }; UniformRndPrjnSpec @["GPe_STN_RndPrjnSpec_1"] { name="GPe_STN_RndPrjnSpec_1"; desc=; unique{ }; children { name="children"; el_typ=UniformRndPrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; p_con=0.4; sym_self=1; same_seed=0; rndm_seed { name="rndm_seed"; seed{ 1942590695;1834211083;377798523;839440218;-583226373;705799995;-1978402924;1154338458;-462115379;246653898;1399794034;-1499780727;-1523899271;930991332;1290781086;1827104268;-716397506;1983718083;1167094774;951783845;-409479048;-735831888;435869947;-904086293;2026496515;403361634;-1944445990;-1372202487;2126959386;162557442;1012427038;1588232218;-1146450552;-853562653;-1656209805;-1888253373;1759765356;1728652414;-337014879;-1280803374;-575509963;-1765188122;-384524531;-821312351;-1870977276;1513531657;1301908149;699607679;871722190;941230124;480719736;-879564786;-698046303;1521335322;-1447079851;-716252964;526031609;1993676142;1340787872;1530654116;-969427509;1134915315;2122089688;-994370515;560929468;389650548;-1122373860;166734577;-286623372;-120943880;891391534;1880819345;-178283282;540924398;-472340061;2110112996;-1254638769;1538060551;1673190834;691970619;-959237381;-1357813313;1768507679;-1214978919;785612098;1900739683;2119690407;432529262;1597777345;-76740981;1752989913;507595810;1970077571;2120922148;-975091467;-1195485087;-2116172007;-1448521787;-1611468311;1523616406;1943148525;-1864229143;-937095503;-909740123;1292237191;387974384;538406262;509446046;-1972547268;-1733600336;-62144424;-1546025606;-1876304799;1885604132;1402880751;-482628413;1554473651;267768126;-629382805;-1249311349;-1924387261;1461040170;509667270;-779074633;-17507771;918255996;-143015157;-2090640919;315301152;702021484;808635402;-2068859673;-1347883889;1693940293;1805057885;-1668427604;-2137413199;-1104482850;208495526;118430790;-722180698;-1217415633;-224256734;1932248267;-1065779137;-10863097;487580081;-196290919;680669227;1979774005;-2037050706;21949689;-156516075;1715173136;1755205487;1472371560;1309034448;-829238765;-135616049;-2013309212;-1082863329;-899363014;-1287869739;-870456151;581622390;-1908234714;-1126900746;764733716;-925858573;-1751091051;-463341148;644681747;-1914494877;373038127;1588478313;1485299105;661291536;-1180395328;-1144161539;94598643;-1088175949;1032986199;-1100837220;407686955;-1082470443;1911682705;1627415103;310787166;1264015414;424266369;-2027001547;-1752167701;-228113290;1600850810;-2083186300;-1987228633;2000848866;-1395386373;80656148;317238254;-1145747623;-511425939;1346724944;180295410;-544883384;1732680478;-1525854862;236088797;1630557266;1645104332;445726791;1077576696;-2008807651;-2004400849;1274587809;1448655060;1550063216;454064067;-221087611;-594550512;-1272829249;1417249337;463284529;432100395;1078285484;-959540334;21248325;-866258652;-1081481128;-1833368508;-1379133116;-1920337657;-1251994147;1350814969;1508926409;1457463506;-436457777;-104638987;-300707471;-917721278;-620891785;523732153;445406412;1634813528;463926328;1581054136;170598643;-416905380;-1864557289;-202014810;1443533836;-1579728646;-1569783365;398032325;603645793;1459091613;-89353942;-1032688516;-1615894428;-767185823;-1946032362;931360128;-836341533;-1238311242;26872554;-1198342849;223875202;1787898723;1347039535;1426899535;712166878;1007370589;-2121265931;1279068215;1048275580;665564878;-854576448;1115606454;-1938871068;437377701;1893989311;60057612;-1411480578;-1802660403;-1229197402;-1114162509;1246510289;-100045555;-771237462;-321537560;1645429527;876081854;-344012824;613155858;-58817405;150811542;-10210852;2112860797;-528954460;-50850354;-649972970;1499955930;1421666445;1351215729;-1262602010;-980699257;1941355339;-961944897;-413046848;-411502877;522743470;-1432644237;-1120760559;-776500101;-1809149014;2127519490;470896056;662683123;-567303983;121758873;-1581863489;-91906121;-996490915;1435662432;1657906168;-1808273636;-1008367748;1370467542;775127407;336430775;908983458;-1287820551;2018562582;684733517;1364159782;839309547;1634308483;-497817377;118348535;-1269053010;955697418;-461911650;286131813;-300370221;1037538534;2023161463;-259022712;-1784489335;970316778;1578200481;500283714;1165730615;1099858613;850929875;-122366113;1415506233;-119359212;-2033313111;2063284557;168272506;1014246244;1972611072;1049837341;2120277277;-1358473916;867839429;1548671628;375995816;335745466;-92761852;-1313606594;983851877;957484913;-786771928;1174167013;457619777;1577173252;29408666;-1853196004;-954511750;-9741238;1764765760;-1106091459;418868525;1218646124;244543749;1280742435;-1669454769;1391623016;-1782787888;1672996012;-660347923;1734104018;-70130822;-1181208948;-285723476;-1959961034;42073851;-1354695576;-548612189;-692983842;1398992433;-1954474622;-414265610;1827986420;-1740813210;392408431;812967600;306150025;1150550306;-1577525793;522329421;-1905599679;1183746118;1873227418;113271279;-118624832;2064640613;91279896;-1296994070;923686864;-1237563925;-671532219;432504743;376157897;-1964026811;-509307951;-1291095292;-92298376;-440266966;742491999;-363297213;907719292;-2097711796;-72292200;797405338;-902353499;-166246906;-943459407;-1618209704;296966888;276718739;881687730;-63517562;-481360418;-1200473828;-144528583;2055425204;425514158;-972984629;-437772543;955225817;-1571664087;1255280381;-1520917476;411210494;-1044569805;1196139168;1000345811;314304961;788619297;-1721237341;1855193732;-688848034;-560160224;110451616;205166806;1045130054;606457223;-106064310;-350539693;-1199925658;-1553567608;1827860289;-495518821;-289479856;-1888403873;66174658;-1741606928;-1734480553;1792669379;2112354548;649961546;-1072485902;1950021075;-145032130;-1448841129;-455451267;-1966366114;-1298920795;837046384;-1783493271;1554055716;544335337;-302006934;-149606522;2022999324;826072250;-549276476;1862748770;1989186214;1089115433;956552701;1745621701;-2034815611;614102796;1479888671;-146686913;-690079684;-1114868597;-2016690506;2090920277;-830594320;-1261017876;2072821639;194345641;-1605828714;484660319;-454560202;1794417171;511341824;-1255389158;-669363423;1164033229;-1107097310;828519990;1450362036;476068860;1972265003;-1879752310;1894610209;-2128722743;1301770305;-1624467838;-731973801;-337476939;-1809040191;1525193216;-2001741915;-2027225998;-1162995606;-717541281;2050620663;-1135005089;2015601957;-1661832271;334966618;-236871560;-2075212969;-2141684690;1078043241;1723366617;828122061;147352703;-1999649046;-903143402;-1024430520;1633016716;-1604804280;1647853874;1626223577;613437415;854959232;-1237163556;-230090669;-278438371;1723117265;500023237;-1216412905;1717506101;1373064296;1994723034;1814828511;2067592941;937637146;-1370177392;-1274587966;-48108349;-378201671;1262614325;62390688;164974972;-830307263;-1714046089;1359544797;2016161042;83584009;930716322;-497279679;2023049077;-206104661;1501245447;562523072;104611198;-46372430;298890283;2110698786;-1091302072;20052267;-1304541777;140132249;-1245355586;-727077616;-316829592;152731111;-154344094;1345278005;-558417490;1281066959;-1469762051;-383552934;199222085;413618054;1552260824;-576003758;105415137;2042323739;1646910169;1084993049;840296744;216680633;1409468883;-1555896089;734078106; }; mti=115; is_gauss_double_cached=0; cached_gauss_double=0; }; }; BaseSpec_Group @.gp["LeabraPrjns"] { name="LeabraPrjns"; el_typ=LeabraUnitSpec; el_def=0; FullPrjnSpec @["FullPrjnSpec_0"] { name="FullPrjnSpec_0"; desc=; unique{ }; children { name="children"; el_typ=FullPrjnSpec; el_def=0; }; self_con=1; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; }; OneToOnePrjnSpec @["OneToOne"] { name="OneToOne"; desc=; unique{ self_con; }; children { name="children"; el_typ=OneToOnePrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; n_conns=-1; recv_start=0; send_start=0; use_gp=0; }; TesselPrjnSpec @["Striatum_GPext"] { name="Striatum_GPext"; desc=; unique{ }; children { name="children"; el_typ=TesselPrjnSpec; el_def=0; TesselPrjnSpec @["PFC_Act_Deep"] { name="PFC_Act_Deep"; desc=; unique{ send_scale; }; children { name="children"; el_typ=TesselPrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; recv_off {x=0: y=0: }; recv_n {x=-1: y=-1: }; recv_skip {x=1: y=1: }; recv_group {x=1: y=1: }; wrap=1; send_scale {x=1: y=0: }; send_off {x=1: y=0: }; send_offs { name="send_offs"; el_typ=TessEl; el_def=0; TessEl @[0] { send_off {x=1: y=0: }; wt_val=1; }; TessEl @[1] { send_off {x=1: y=0: }; wt_val=1; }; TessEl @[2] { send_off {x=1: y=1: }; wt_val=1; }; TessEl @[3] { send_off {x=1: y=1: }; wt_val=1; }; TessEl @[4] { send_off {x=1: y=2: }; wt_val=1; }; TessEl @[5] { send_off {x=1: y=2: }; wt_val=1; }; TessEl @[6] { send_off {x=1: y=3: }; wt_val=1; }; TessEl @[7] { send_off {x=1: y=3: }; wt_val=1; }; TessEl @[8] { send_off {x=1: y=4: }; wt_val=1; }; TessEl @[9] { send_off {x=1: y=4: }; wt_val=1; }; TessEl @[10] { send_off {x=1: y=5: }; wt_val=1; }; TessEl @[11] { send_off {x=1: y=5: }; wt_val=1; }; TessEl @[12] { send_off {x=1: y=6: }; wt_val=1; }; TessEl @[13] { send_off {x=1: y=6: }; wt_val=1; }; TessEl @[14] { send_off {x=1: y=7: }; wt_val=1; }; TessEl @[15] { send_off {x=1: y=7: }; wt_val=1; }; TessEl @[16] { send_off {x=1: y=8: }; wt_val=1; }; TessEl @[17] { send_off {x=1: y=8: }; wt_val=1; }; }; last_make_cmd=; last_weights_cmd=; }; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; recv_off {x=0: y=0: }; recv_n {x=-1: y=-1: }; recv_skip {x=1: y=1: }; recv_group {x=1: y=1: }; wrap=1; send_scale {x=1: y=1: }; send_off {x=1: y=0: }; send_offs { name="send_offs"; el_typ=TessEl; el_def=0; TessEl @[0] { send_off {x=1: y=0: }; wt_val=1; }; TessEl @[1] { send_off {x=1: y=0: }; wt_val=1; }; TessEl @[2] { send_off {x=1: y=1: }; wt_val=1; }; TessEl @[3] { send_off {x=1: y=1: }; wt_val=1; }; TessEl @[4] { send_off {x=1: y=2: }; wt_val=1; }; TessEl @[5] { send_off {x=1: y=2: }; wt_val=1; }; TessEl @[6] { send_off {x=1: y=3: }; wt_val=1; }; TessEl @[7] { send_off {x=1: y=3: }; wt_val=1; }; TessEl @[8] { send_off {x=1: y=4: }; wt_val=1; }; TessEl @[9] { send_off {x=1: y=4: }; wt_val=1; }; TessEl @[10] { send_off {x=1: y=5: }; wt_val=1; }; TessEl @[11] { send_off {x=1: y=5: }; wt_val=1; }; TessEl @[12] { send_off {x=1: y=6: }; wt_val=1; }; TessEl @[13] { send_off {x=1: y=6: }; wt_val=1; }; TessEl @[14] { send_off {x=1: y=7: }; wt_val=1; }; TessEl @[15] { send_off {x=1: y=7: }; wt_val=1; }; TessEl @[16] { send_off {x=1: y=8: }; wt_val=1; }; TessEl @[17] { send_off {x=1: y=8: }; wt_val=1; }; }; last_make_cmd=; last_weights_cmd=; }; TesselPrjnSpec @["dMatrosomesGP"] { name="dMatrosomesGP"; desc=; unique{ }; children { name="children"; el_typ=TesselPrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; recv_off {x=0: y=0: }; recv_n {x=-1: y=-1: }; recv_skip {x=1: y=1: }; recv_group {x=1: y=9: }; wrap=0; send_scale {x=1: y=1: }; send_off {x=0: y=0: }; send_offs { name="send_offs"; el_typ=TessEl; el_def=0; TessEl @[0] { send_off {x=0: y=0: }; wt_val=1; }; TessEl @[1] { send_off {x=0: y=1: }; wt_val=1; }; TessEl @[2] { send_off {x=0: y=2: }; wt_val=1; }; TessEl @[3] { send_off {x=0: y=3: }; wt_val=1; }; TessEl @[4] { send_off {x=0: y=4: }; wt_val=1; }; TessEl @[5] { send_off {x=0: y=5: }; wt_val=1; }; TessEl @[6] { send_off {x=0: y=6: }; wt_val=1; }; TessEl @[7] { send_off {x=0: y=7: }; wt_val=1; }; TessEl @[8] { send_off {x=0: y=8: }; wt_val=1; }; }; last_make_cmd=; last_weights_cmd=; }; TesselPrjnSpec @["SNc_GO"] { name="SNc_GO"; desc=; unique{ }; children { name="children"; el_typ=TesselPrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; recv_off {x=0: y=0: }; recv_n {x=2: y=-1: }; recv_skip {x=1: y=1: }; recv_group {x=1: y=1: }; wrap=1; send_scale {x=1: y=1: }; send_off {x=0: y=0: }; send_offs { name="send_offs"; el_typ=TessEl; el_def=0; TessEl @[0] { send_off {x=0: y=0: }; wt_val=1; }; TessEl @[1] { send_off {x=1: y=0: }; wt_val=1; }; TessEl @[2] { send_off {x=0: y=1: }; wt_val=1; }; TessEl @[3] { send_off {x=1: y=1: }; wt_val=1; }; TessEl @[4] { send_off {x=0: y=2: }; wt_val=1; }; TessEl @[5] { send_off {x=1: y=2: }; wt_val=1; }; TessEl @[6] { send_off {x=0: y=3: }; wt_val=1; }; TessEl @[7] { send_off {x=1: y=3: }; wt_val=1; }; TessEl @[8] { send_off {x=0: y=4: }; wt_val=1; }; TessEl @[9] { send_off {x=1: y=4: }; wt_val=1; }; TessEl @[10] { send_off {x=0: y=5: }; wt_val=1; }; TessEl @[11] { send_off {x=1: y=5: }; wt_val=1; }; }; last_make_cmd=; last_weights_cmd=; }; TesselPrjnSpec @["MotorCortex_Striatum"] { name="MotorCortex_Striatum"; desc=; unique{ }; children { name="children"; el_typ=TesselPrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; recv_off {x=0: y=0: }; recv_n {x=-1: y=-1: }; recv_skip {x=1: y=1: }; recv_group {x=1: y=9: }; wrap=1; send_scale {x=1: y=1: }; send_off {x=0: y=0: }; send_offs { name="send_offs"; el_typ=TessEl; el_def=0; TessEl @[0] { send_off {x=0: y=0: }; wt_val=1; }; TessEl @[1] { send_off {x=0: y=1: }; wt_val=1; }; }; last_make_cmd=; last_weights_cmd=; }; TesselPrjnSpec @["SNc_NOGO"] { name="SNc_NOGO"; desc=; unique{ }; children { name="children"; el_typ=TesselPrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; recv_off {x=2: y=0: }; recv_n {x=2: y=-1: }; recv_skip {x=1: y=1: }; recv_group {x=1: y=1: }; wrap=1; send_scale {x=1: y=1: }; send_off {x=0: y=0: }; send_offs { name="send_offs"; el_typ=TessEl; el_def=0; TessEl @[0] { send_off {x=0: y=0: }; wt_val=1; }; TessEl @[1] { send_off {x=1: y=0: }; wt_val=1; }; TessEl @[2] { send_off {x=0: y=1: }; wt_val=1; }; TessEl @[3] { send_off {x=1: y=1: }; wt_val=1; }; TessEl @[4] { send_off {x=0: y=2: }; wt_val=1; }; TessEl @[5] { send_off {x=1: y=2: }; wt_val=1; }; TessEl @[6] { send_off {x=0: y=3: }; wt_val=1; }; TessEl @[7] { send_off {x=1: y=3: }; wt_val=1; }; TessEl @[8] { send_off {x=0: y=4: }; wt_val=1; }; TessEl @[9] { send_off {x=1: y=4: }; wt_val=1; }; TessEl @[10] { send_off {x=0: y=5: }; wt_val=1; }; TessEl @[11] { send_off {x=1: y=5: }; wt_val=1; }; }; last_make_cmd=; last_weights_cmd=; }; TesselPrjnSpec @["Striatum_GPInt"] { name="Striatum_GPInt"; desc=; unique{ }; children { name="children"; el_typ=TesselPrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; recv_off {x=0: y=0: }; recv_n {x=-1: y=-1: }; recv_skip {x=1: y=1: }; recv_group {x=1: y=5: }; wrap=0; send_scale {x=1: y=1: }; send_off {x=0: y=0: }; send_offs { name="send_offs"; el_typ=TessEl; el_def=0; TessEl @[0] { send_off {x=0: y=0: }; wt_val=1; }; TessEl @[1] { send_off {x=0: y=1: }; wt_val=1; }; TessEl @[2] { send_off {x=0: y=2: }; wt_val=1; }; TessEl @[3] { send_off {x=0: y=3: }; wt_val=1; }; TessEl @[4] { send_off {x=0: y=4: }; wt_val=1; }; TessEl @[5] { send_off {x=0: y=5: }; wt_val=1; }; TessEl @[6] { send_off {x=0: y=6: }; wt_val=1; }; TessEl @[7] { send_off {x=0: y=7: }; wt_val=1; }; TessEl @[8] { send_off {x=0: y=8: }; wt_val=1; }; }; last_make_cmd=; last_weights_cmd=; }; TesselPrjnSpec @["MotorCortex_NoGoStriatum"] { name="MotorCortex_NoGoStriatum"; desc=; unique{ }; children { name="children"; el_typ=TesselPrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; recv_off {x=2: y=0: }; recv_n {x=-1: y=-1: }; recv_skip {x=1: y=1: }; recv_group {x=1: y=9: }; wrap=1; send_scale {x=1: y=1: }; send_off {x=0: y=0: }; send_offs { name="send_offs"; el_typ=TessEl; el_def=0; TessEl @[0] { send_off {x=0: y=0: }; wt_val=1; }; TessEl @[1] { send_off {x=0: y=0: }; wt_val=1; }; TessEl @[2] { send_off {x=0: y=2: }; wt_val=1; }; TessEl @[3] { send_off {x=0: y=3: }; wt_val=1; }; }; last_make_cmd=; last_weights_cmd=; }; OneToOnePrjnSpec @["OneToOne_2"] { name="OneToOne_2"; desc=; unique{ self_con; }; children { name="children"; el_typ=OneToOnePrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; n_conns=-1; recv_start=0; send_start=2; use_gp=0; }; TesselPrjnSpec @["RowToRow"] { name="RowToRow"; desc=; unique{ }; children { name="children"; el_typ=TesselPrjnSpec; el_def=0; }; self_con=0; init_wts=0; add_rnd_wts=0; add_rnd_wts_scale=1; recv_off {x=0: y=0: }; recv_n {x=-1: y=-1: }; recv_skip {x=1: y=1: }; recv_group {x=1: y=9: }; wrap=0; send_scale {x=1: y=1: }; send_off {x=0: y=0: }; send_offs { name="send_offs"; el_typ=TessEl; el_def=0; TessEl @[0] { send_off {x=0: y=0: }; wt_val=1; }; TessEl @[1] { send_off {x=0: y=1: }; wt_val=1; }; TessEl @[2] { send_off {x=0: y=2: }; wt_val=1; }; TessEl @[3] { send_off {x=0: y=3: }; wt_val=1; }; TessEl @[4] { send_off {x=0: y=4: }; wt_val=1; }; TessEl @[5] { send_off {x=0: y=5: }; wt_val=1; }; TessEl @[6] { send_off {x=0: y=6: }; wt_val=1; }; TessEl @[7] { send_off {x=0: y=7: }; wt_val=1; }; TessEl @[8] { send_off {x=0: y=8: }; wt_val=1; }; }; last_make_cmd=; last_weights_cmd=; }; }; BaseSpec_Group @.gp["Connections"] { name="Connections"; el_typ=LeabraUnitSpec; el_def=0; LeabraBiasSpec @["LearnBias"] { name="LearnBias"; desc=; unique{ rnd;wt_limits;wt_scale;wt_scale_init; }; children { name="children"; el_typ=LeabraBiasSpec; el_def=0; LeabraBiasSpec @["FixedBias"] { name="FixedBias"; desc=; unique{ lrate;wt_limits;wt_scale;wt_scale_init; }; children { name="children"; el_typ=LeabraBiasSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0: var=0: par=1: }; wt_limits {type=NONE: min=-1: max=5: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=1: rel=1: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0: err=1: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; dwt_thresh=0.1; }; }; rnd {name="rnd": type=UNIFORM: mean=0: var=0: par=1: }; wt_limits {type=NONE: min=-1: max=5: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=1: rel=1: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0.01; cur_lrate=0.01; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0: err=1: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; dwt_thresh=0.1; }; LeabraConSpec @["FixedFull"] { name="FixedFull"; desc=; unique{ rnd; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; LeabraConSpec @["InhibCons"] { name="InhibCons"; desc=; unique{ rnd;wt_limits;inhib;wt_scale; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.75: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=0.4: rel=1.2: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["InhibNoGo"] { name="InhibNoGo"; desc=; unique{ rnd;wt_limits;inhib;wt_scale; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.75: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=0.55: rel=1: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["NoGo_inhib_Go"] { name="NoGo_inhib_Go"; desc=; unique{ rnd;wt_limits;inhib;wt_scale; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.75: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=0.35: rel=1: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["InhibInhib"] { name="InhibInhib"; desc=; unique{ rnd;wt_limits;inhib;wt_scale; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.8: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=0.25: rel=1.5: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["FBtoInhib"] { name="FBtoInhib"; desc=; unique{ wt_limits;rnd;lrate;wt_scale; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; LeabraConSpec @["FFtoInhib"] { name="FFtoInhib"; desc=; unique{ wt_scale;rnd; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.35: var=0.25: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.55: rel=1: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; }; rnd {name="rnd": type=UNIFORM: mean=0.25: var=0.1: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.8: rel=2: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; }; rnd {name="rnd": type=UNIFORM: mean=1: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=1: rel=3: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["MtrThal"] { name="MtrThal"; desc=; unique{ rnd; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; LeabraConSpec @["InhibCons"] { name="InhibCons"; desc=; unique{ rnd;wt_limits;inhib;wt_scale; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.75: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=1: rel=1.2: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["NoGo_inhib_Go"] { name="NoGo_inhib_Go"; desc=; unique{ rnd;wt_limits;inhib;wt_scale; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.75: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=0.6: rel=1: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["InhibInhib"] { name="InhibInhib"; desc=; unique{ rnd;wt_limits;inhib;wt_scale; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.8: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=1.5: rel=1.5: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["FBtoInhib"] { name="FBtoInhib"; desc=; unique{ wt_limits;rnd;lrate;wt_scale; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; LeabraConSpec @["FFtoInhib"] { name="FFtoInhib"; desc=; unique{ wt_scale;rnd; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.35: var=0.25: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.7: rel=1: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; }; rnd {name="rnd": type=UNIFORM: mean=0.25: var=0.1: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=1: rel=2: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; }; rnd {name="rnd": type=UNIFORM: mean=1: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.6: rel=3: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["GPeGPiInhib"] { name="GPeGPiInhib"; desc=; unique{ rnd;inhib; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; LeabraConSpec @["ThalInhib"] { name="ThalInhib"; desc=; unique{ wt_scale;wt_sig;savg_cor; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=1: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=1: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=0.4: rel=2: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=0.4: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["Inhib_Learn"] { name="Inhib_Learn"; desc=; unique{ rnd;wt_scale;lrate; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.35: var=0.1: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=1: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=7: rel=2: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=1e-5; cur_lrate=1e-5; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; }; rnd {name="rnd": type=UNIFORM: mean=1: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=1: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=1.5: rel=1.5: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["Fixed"] { name="Fixed"; desc=; unique{ rnd; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; LeabraConSpec @["STNcons"] { name="STNcons"; desc=; unique{ rnd;wt_scale;lrate; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.5: var=0.21: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.25: rel=0.7: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0.001; cur_lrate=0.001; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=0.4: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["MotorCortex_Striatum"] { name="MotorCortex_Striatum"; desc=; unique{ rnd;wt_limits;wt_scale;savg_cor; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.5: var=0.06: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=1: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.6: rel=1.5: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0.001; cur_lrate=0.001; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=0: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["Motor_NoGo"] { name="Motor_NoGo"; desc=; unique{ rnd;wt_limits;wt_scale;savg_cor; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.5: var=0.06: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=1: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.45: rel=1.35: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0.001; cur_lrate=0.001; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=0: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["Input_Motor_Prepotent_"] { name="Input_Motor_Prepotent_"; desc=; unique{ rnd;wt_scale;lrate;lmix; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.35: var=0.005: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=3: rel=1: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=1e-6; cur_lrate=1e-6; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=1: err=0: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=0.4: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["InputGo"] { name="InputGo"; desc=; unique{ rnd;wt_scale;lrate;savg_cor; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; LeabraConSpec @["Go_input"] { name="Go_input"; desc=; unique{ wt_scale; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.5: var=0.25: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=1: rel=0.01: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0.001; cur_lrate=0.001; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.001: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; }; rnd {name="rnd": type=UNIFORM: mean=0.5: var=0.25: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.55: rel=1.1: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0.001; cur_lrate=0.001; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.001: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["InputNoGo"] { name="InputNoGo"; desc=; unique{ rnd;wt_scale;lrate;savg_cor; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; LeabraConSpec @["Go_input"] { name="Go_input"; desc=; unique{ wt_scale; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.5: var=0.25: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=1: rel=0.01: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0.001; cur_lrate=0.001; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.001: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; }; rnd {name="rnd": type=UNIFORM: mean=0.5: var=0.25: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.45: rel=1: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0.001; cur_lrate=0.001; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.001: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["STN_GPi"] { name="STN_GPi"; desc=; unique{ rnd;wt_scale;lrate; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.5: var=0.21: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.15: rel=0.55: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0.0001; cur_lrate=0.0001; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=0.4: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["Mtr_STNcons"] { name="Mtr_STNcons"; desc=; unique{ rnd;wt_scale;lrate; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.65: var=0.2: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.45: rel=2: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=0.4: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; }; rnd {name="rnd": type=UNIFORM: mean=0.1: var=0.01: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=1: rel=1: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0.001; cur_lrate=0.0075; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=0.4: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["Dopamine_D1_"] { name="Dopamine_D1_"; desc=; unique{ rnd; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.5: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=0; wt_scale {abs=0.6: rel=0.5: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=0.4: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["SNc_Inhib_D2_"] { name="SNc_Inhib_D2_"; desc=; unique{ rnd;inhib; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=1: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=0: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=0.5: rel=1.5: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=0.4: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["Inhib"] { name="Inhib"; desc=; unique{ rnd;inhib; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.7: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=1: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=1.6: rel=2.25: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; LeabraConSpec @["NoGoGPe"] { name="NoGoGPe"; desc=; unique{ rnd;inhib; }; children { name="children"; el_typ=LeabraConSpec; el_def=0; }; rnd {name="rnd": type=UNIFORM: mean=0.7: var=0: par=1: }; wt_limits {type=MIN_MAX: min=0: max=1: sym=1: }; learn_rule=LEABRA_CHL; inhib=1; wt_scale {abs=2.3: rel=2.25: sem_extra=2: }; diff_scale_p=0; wt_scale_p {abs=1: rel=1: sem_extra=2: }; wt_scale_init {init=0: abs=1: rel=1: }; learn=1; lrate=0; cur_lrate=0; lrs_value=EPOCH; lrate_sched { name="lrate_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=0; }; ignore_unlearnable=1; wt_sig {gain=6: off=1.25: dwt_norm=0: }; stable_mix {stable_pct=0: learn_pct=1: cos_diff_lrate=0: }; lmix {hebb=0.01: err=0.99: err_sb=1: }; xcal {l_mix=L_MIX: thr_l_mix=0.01: thr_m_mix=0.99: s_mix=0.9: m_mix=0.1: d_rev=0.1: d_thr=0.0001: d_rev_ratio=-9: }; savg_cor {cor=1: thresh=0.01: }; rel_net_adapt { on=0; trg_fm_input=0.85; trg_fm_output=0.15; trg_lateral=0; trg_sum=1; tol_lg=0.05; tol_sm=0.2; rel_lrate=0.1; }; }; }; BaseSpec_Group @.gp["Units"] { name="Units"; el_typ=LeabraUnitSpec; el_def=0; LeabraUnitSpec @["FixedBiasUnitSpec"] { name="FixedBiasUnitSpec"; desc=; unique{ opt_thresh; }; children { name="children"; el_typ=LeabraUnitSpec; el_def=0; LeabraUnitSpec @["GPExt_UnitSpec"] { name="GPExt_UnitSpec"; desc=; unique{ bias_spec;act;opt_thresh;v_m_init;dt;g_bar;e_rev; }; children { name="children"; el_typ=LeabraUnitSpec; el_def=0; }; act_range {min=0: max=1: range=1: scale=1: }; bias_con_type=LeabraCon; bias_spec {type=LeabraBiasSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["LearnBias"].children["FixedBias"]$$: }; sse_tol=0.5; act_fun=NOISY_XX1; act {gelin=0: thr=0.25: gain=600: nvar=0.005: avg_dt=0.005: avg_init=0.15: i_thr=STD: }; act_lrn_on=0; act_lrn {gelin=1: thr=0.5: gain=100: nvar=0.005: }; spike {rise=1: decay=0.05: g_gain=4: window=20: eq_gain=10: eq_dt=0.02: }; spike_misc { exp_slope=0.02; spk_thr=1.2; clamp_max_p=0.11; clamp_type=REGULAR; vm_r=0; t_r=6; vm_dend=0.3; vm_dend_dt=0.16; vm_dend_time=6.25; }; opt_thresh {send=0.1: delta=0.005: phase_dif=0: xcal_lrn=0.01: }; maxda {val=INET_DA: inet_scale=1: lay_avg_thr=0.01: }; clamp_range {min=0: max=0.95: range=0.95: scale=1.052632: }; vm_range {min=0: max=1: range=1: scale=1: }; v_m_init {name="v_m_init": type=UNIFORM: mean=0.26: var=0: par=1: }; act_init {name="act_init": type=NONE: mean=0: var=0: par=1: }; dt {integ=1: vm=0.1: net=0.7: midpoint=0: d_vm_max=0.025: vm_eq_cyc=0: vm_eq_dt=1: integ_time=1: vm_time=10: net_time=1.428571: }; act_avg {l_up_add=0: l_dn_pct=0: l_up_dt=0.6: l_dn_dt=0.05: m_dt=0.1: s_dt=0.2: ss_dt=1: use_nd=0: l_time=20: m_time=10: s_time=5: ss_time=1: }; g_bar {e=1: l=1: i=2.5: h=0.1: a=0.5: }; e_rev {e=1: l=0.255: i=0.15: h=1: a=0: }; hyst {on=0: b_inc_dt=0.05: b_dec_dt=0.05: a_thr=0.8: d_thr=0.7: g_dt=0.1: init=1: trl=0: }; acc {on=0: b_inc_dt=0.01: b_dec_dt=0.01: a_thr=0.5: d_thr=0.1: g_dt=0.1: init=0: trl=0: }; adapt { on=0; dt=0.007; vm_gain=0.1; spike_gain=0.01; interval=10; trials=0; dt_time=142.8571; }; depress {phase_act=ACT_ND: on=0: rec=0.2: asymp_act=0.5: depl=0.2105263: interval=1: trials=0: max_amp=2: }; syn_delay { on=0; delay=4; }; da_mod {on=0: mod=PLUS_CONT: gain=0.1: }; noise_type=NO_NOISE; noise {name="noise": type=GAUSSIAN: mean=0: var=0.001: par=1: }; noise_adapt {trial_fixed=1: k_pos_noise=0: mode=FIXED_NOISE: min_pct=0.5: min_pct_c=0.5: }; noise_sched { name="noise_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=1; }; }; LeabraUnitSpec @["OutputUnitSpec"] { name="OutputUnitSpec"; desc=; unique{ bias_spec;act;opt_thresh;g_bar; }; children { name="children"; el_typ=LeabraUnitSpec; el_def=0; }; act_range {min=0: max=1: range=1: scale=1: }; bias_con_type=LeabraCon; bias_spec {type=LeabraBiasSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["LearnBias"].children["FixedBias"]$: }; sse_tol=0.5; act_fun=NOISY_XX1; act {gelin=0: thr=0.2: gain=600: nvar=0.005: avg_dt=0.005: avg_init=0.15: i_thr=STD: }; act_lrn_on=0; act_lrn {gelin=1: thr=0.5: gain=100: nvar=0.005: }; spike {rise=1: decay=0.05: g_gain=4: window=20: eq_gain=10: eq_dt=0.02: }; spike_misc { exp_slope=0.02; spk_thr=1.2; clamp_max_p=0.11; clamp_type=REGULAR; vm_r=0; t_r=6; vm_dend=0.3; vm_dend_dt=0.16; vm_dend_time=6.25; }; opt_thresh {send=0.1: delta=0.005: phase_dif=0: xcal_lrn=0.01: }; maxda {val=INET_DA: inet_scale=1: lay_avg_thr=0.01: }; clamp_range {min=0: max=0.95: range=0.95: scale=1.052632: }; vm_range {min=0: max=1: range=1: scale=1: }; v_m_init {name="v_m_init": type=UNIFORM: mean=0.15: var=0: par=1: }; act_init {name="act_init": type=NONE: mean=0: var=0: par=1: }; dt {integ=1: vm=0.04: net=0.7: midpoint=0: d_vm_max=0.025: vm_eq_cyc=0: vm_eq_dt=1: integ_time=1: vm_time=25: net_time=1.428571: }; act_avg {l_up_add=0: l_dn_pct=0: l_up_dt=0.6: l_dn_dt=0.05: m_dt=0.1: s_dt=0.2: ss_dt=1: use_nd=0: l_time=20: m_time=10: s_time=5: ss_time=1: }; g_bar {e=1: l=1: i=1: h=0.1: a=0.5: }; e_rev {e=1: l=0.15: i=0.15: h=1: a=0: }; hyst {on=0: b_inc_dt=0.05: b_dec_dt=0.05: a_thr=0.8: d_thr=0.7: g_dt=0.1: init=1: trl=0: }; acc {on=0: b_inc_dt=0.01: b_dec_dt=0.01: a_thr=0.5: d_thr=0.1: g_dt=0.1: init=0: trl=0: }; adapt { on=0; dt=0.007; vm_gain=0.1; spike_gain=0.01; interval=10; trials=0; dt_time=142.8571; }; depress {phase_act=ACT_ND: on=0: rec=0.2: asymp_act=0.5: depl=0.2105263: interval=1: trials=0: max_amp=2: }; syn_delay { on=0; delay=4; }; da_mod {on=0: mod=PLUS_CONT: gain=0.1: }; noise_type=NO_NOISE; noise {name="noise": type=GAUSSIAN: mean=0: var=0.001: par=1: }; noise_adapt {trial_fixed=1: k_pos_noise=0: mode=FIXED_NOISE: min_pct=0.5: min_pct_c=0.5: }; noise_sched { name="noise_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=1; }; }; LeabraUnitSpec @["Thalamus"] { name="Thalamus"; desc=; unique{ bias_spec;opt_thresh;dt;g_bar; }; children { name="children"; el_typ=LeabraUnitSpec; el_def=0; }; act_range {min=0: max=1: range=1: scale=1: }; bias_con_type=LeabraCon; bias_spec {type=LeabraBiasSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["LearnBias"].children["FixedBias"]$: }; sse_tol=0.5; act_fun=NOISY_XX1; act {gelin=0: thr=0.25: gain=600: nvar=0.005: avg_dt=0.005: avg_init=0.15: i_thr=STD: }; act_lrn_on=0; act_lrn {gelin=1: thr=0.5: gain=100: nvar=0.005: }; spike {rise=1: decay=0.05: g_gain=4: window=20: eq_gain=10: eq_dt=0.02: }; spike_misc { exp_slope=0.02; spk_thr=1.2; clamp_max_p=0.11; clamp_type=REGULAR; vm_r=0; t_r=6; vm_dend=0.3; vm_dend_dt=0.16; vm_dend_time=6.25; }; opt_thresh {send=0.1: delta=0.005: phase_dif=0: xcal_lrn=0.01: }; maxda {val=INET_DA: inet_scale=1: lay_avg_thr=0.01: }; clamp_range {min=0: max=0.95: range=0.95: scale=1.052632: }; vm_range {min=0: max=1: range=1: scale=1: }; v_m_init {name="v_m_init": type=UNIFORM: mean=0.15: var=0: par=1: }; act_init {name="act_init": type=NONE: mean=0: var=0: par=1: }; dt {integ=1: vm=0.05: net=0.4: midpoint=0: d_vm_max=0.025: vm_eq_cyc=0: vm_eq_dt=1: integ_time=1: vm_time=20: net_time=2.5: }; act_avg {l_up_add=0: l_dn_pct=0: l_up_dt=0.6: l_dn_dt=0.05: m_dt=0.1: s_dt=0.2: ss_dt=1: use_nd=0: l_time=20: m_time=10: s_time=5: ss_time=1: }; g_bar {e=0.5: l=0.07: i=1.7: h=0.2: a=0.5: }; e_rev {e=1: l=0.15: i=0.15: h=1: a=0: }; hyst {on=0: b_inc_dt=0.05: b_dec_dt=0.05: a_thr=0.8: d_thr=0.7: g_dt=0.1: init=1: trl=0: }; acc {on=0: b_inc_dt=0.01: b_dec_dt=0.01: a_thr=0.5: d_thr=0.1: g_dt=0.1: init=0: trl=0: }; adapt { on=0; dt=0.007; vm_gain=0.1; spike_gain=0.01; interval=10; trials=0; dt_time=142.8571; }; depress {phase_act=ACT_ND: on=0: rec=0.2: asymp_act=0.5: depl=0.2105263: interval=1: trials=0: max_amp=2: }; syn_delay { on=0; delay=4; }; da_mod {on=0: mod=PLUS_CONT: gain=0.1: }; noise_type=NO_NOISE; noise {name="noise": type=GAUSSIAN: mean=0: var=0.001: par=1: }; noise_adapt {trial_fixed=1: k_pos_noise=0: mode=FIXED_NOISE: min_pct=0.5: min_pct_c=0.5: }; noise_sched { name="noise_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=1; }; }; LeabraUnitSpec @["LearnBiasUnitSpec"] { name="LearnBiasUnitSpec"; desc=; unique{ bias_spec; }; children { name="children"; el_typ=LeabraUnitSpec; el_def=0; LeabraUnitSpec @["matrisom_unitspec"] { name="matrisom_unitspec"; desc=; unique{ bias_spec;act;opt_thresh;g_bar;act_reg;noise_type;noise;dt;noise_adapt; }; children { name="children"; el_typ=LeabraUnitSpec; el_def=0; }; act_range {min=0: max=1: range=1: scale=1: }; bias_con_type=LeabraCon; bias_spec {type=LeabraBiasSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["LearnBias"].children["FixedBias"]$: }; sse_tol=0.5; act_fun=NOISY_XX1; act {gelin=0: thr=0.26: gain=625: nvar=0.005: avg_dt=0.005: avg_init=0.15: i_thr=STD: }; act_lrn_on=0; act_lrn {gelin=1: thr=0.5: gain=100: nvar=0.005: }; spike {rise=1: decay=0.05: g_gain=4: window=20: eq_gain=10: eq_dt=0.02: }; spike_misc { exp_slope=0.02; spk_thr=1.2; clamp_max_p=0.11; clamp_type=REGULAR; vm_r=0; t_r=6; vm_dend=0.3; vm_dend_dt=0.16; vm_dend_time=6.25; }; opt_thresh {send=0.1: delta=0.005: phase_dif=0: xcal_lrn=0.01: }; maxda {val=INET_DA: inet_scale=1: lay_avg_thr=0.01: }; clamp_range {min=0: max=0.95: range=0.95: scale=1.052632: }; vm_range {min=0: max=1: range=1: scale=1: }; v_m_init {name="v_m_init": type=UNIFORM: mean=0.15: var=0: par=1: }; act_init {name="act_init": type=NONE: mean=0: var=0: par=1: }; dt {integ=1: vm=0.023: net=0.7: midpoint=0: d_vm_max=0.025: vm_eq_cyc=0: vm_eq_dt=1: integ_time=1: vm_time=43.47826: net_time=1.428571: }; act_avg {l_up_add=0: l_dn_pct=0: l_up_dt=0.6: l_dn_dt=0.05: m_dt=0.1: s_dt=0.2: ss_dt=1: use_nd=0: l_time=20: m_time=10: s_time=5: ss_time=1: }; g_bar {e=1: l=0.35: i=9: h=1.2: a=0.5: }; e_rev {e=1: l=0.15: i=0.15: h=1: a=0: }; hyst {on=0: b_inc_dt=0.05: b_dec_dt=0.05: a_thr=0.8: d_thr=0.7: g_dt=0.1: init=1: trl=0: }; acc {on=0: b_inc_dt=0.01: b_dec_dt=0.01: a_thr=0.5: d_thr=0.1: g_dt=0.1: init=0: trl=0: }; adapt { on=0; dt=0.007; vm_gain=0.1; spike_gain=0.01; interval=10; trials=0; dt_time=142.8571; }; depress {phase_act=ACT_ND: on=0: rec=0.2: asymp_act=0.5: depl=0.2105263: interval=1: trials=0: max_amp=2: }; syn_delay { on=0; delay=4; }; da_mod {on=0: mod=PLUS_CONT: gain=0.1: }; noise_type=VM_NOISE; noise {name="noise": type=GAUSSIAN: mean=0: var=0: par=1: }; noise_adapt {trial_fixed=0: k_pos_noise=0: mode=FIXED_NOISE: min_pct=0.5: min_pct_c=0.5: }; noise_sched { name="noise_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=1; }; }; LeabraUnitSpec @["Motor_Cortex_unitspec"] { name="Motor_Cortex_unitspec"; desc=; unique{ bias_spec;opt_thresh;dt;acc;noise_type;noise;noise_sched;g_bar;noise_adapt; }; children { name="children"; el_typ=LeabraUnitSpec; el_def=0; }; act_range {min=0: max=1: range=1: scale=1: }; bias_con_type=LeabraCon; bias_spec {type=LeabraBiasSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["LearnBias"].children["FixedBias"]$: }; sse_tol=0.5; act_fun=NOISY_XX1; act {gelin=0: thr=0.25: gain=600: nvar=0.005: avg_dt=0.005: avg_init=0.15: i_thr=STD: }; act_lrn_on=0; act_lrn {gelin=1: thr=0.5: gain=100: nvar=0.005: }; spike {rise=1: decay=0.05: g_gain=4: window=20: eq_gain=10: eq_dt=0.02: }; spike_misc { exp_slope=0.02; spk_thr=1.2; clamp_max_p=0.11; clamp_type=REGULAR; vm_r=0; t_r=6; vm_dend=0.3; vm_dend_dt=0.16; vm_dend_time=6.25; }; opt_thresh {send=0.1: delta=0.005: phase_dif=0: xcal_lrn=0.01: }; maxda {val=INET_DA: inet_scale=1: lay_avg_thr=0.01: }; clamp_range {min=0: max=0.95: range=0.95: scale=1.052632: }; vm_range {min=0: max=1: range=1: scale=1: }; v_m_init {name="v_m_init": type=UNIFORM: mean=0.15: var=0: par=1: }; act_init {name="act_init": type=NONE: mean=0: var=0: par=1: }; dt {integ=1: vm=0.05: net=0.7: midpoint=0: d_vm_max=0.025: vm_eq_cyc=0: vm_eq_dt=1: integ_time=1: vm_time=20: net_time=1.428571: }; act_avg {l_up_add=0: l_dn_pct=0: l_up_dt=0.6: l_dn_dt=0.05: m_dt=0.1: s_dt=0.2: ss_dt=1: use_nd=0: l_time=20: m_time=10: s_time=5: ss_time=1: }; g_bar {e=1: l=0.1: i=1: h=1.2: a=0.5: }; e_rev {e=1: l=0.15: i=0.15: h=1: a=0: }; hyst {on=0: b_inc_dt=0.05: b_dec_dt=0.05: a_thr=0.8: d_thr=0.7: g_dt=0.1: init=1: trl=0: }; acc {on=0: b_inc_dt=0.005: b_dec_dt=0.01: a_thr=0.25: d_thr=0.1: g_dt=0.1: init=1: trl=0: }; adapt { on=0; dt=0.007; vm_gain=0.1; spike_gain=0.01; interval=10; trials=0; dt_time=142.8571; }; depress {phase_act=ACT_ND: on=0: rec=0.2: asymp_act=0.5: depl=0.2105263: interval=1: trials=0: max_amp=2: }; syn_delay { on=0; delay=4; }; da_mod {on=0: mod=PLUS_CONT: gain=0.1: }; noise_type=VM_NOISE; noise {name="noise": type=GAUSSIAN: mean=0.0015: var=0.0015: par=1: }; noise_adapt {trial_fixed=0: k_pos_noise=0: mode=SCHED_CYCLES: min_pct=0.5: min_pct_c=0.5: }; noise_sched { name="noise_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=1; SchedItem @[0] { start_ctr=0; start_val=1; duration=25; step=0; }; SchedItem @[1] { start_ctr=25; start_val=1; duration=55; step=-0.009090909; }; SchedItem @[2] { start_ctr=80; start_val=0.5; duration=20; step=-0.015; }; SchedItem @[3] { start_ctr=100; start_val=0.2; duration=1; step=1; }; }; }; LeabraUnitSpec @["STN_unitspec"] { name="STN_unitspec"; desc=; unique{ bias_spec;act;opt_thresh;v_m_init;dt;g_bar;e_rev;noise_type;noise; }; children { name="children"; el_typ=LeabraUnitSpec; el_def=0; }; act_range {min=0: max=1: range=1: scale=1: }; bias_con_type=LeabraCon; bias_spec {type=LeabraBiasSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["LearnBias"].children["FixedBias"]$: }; sse_tol=0.5; act_fun=NOISY_XX1; act {gelin=0: thr=0.25: gain=600: nvar=0.005: avg_dt=0.005: avg_init=0.15: i_thr=STD: }; act_lrn_on=0; act_lrn {gelin=1: thr=0.5: gain=100: nvar=0.005: }; spike {rise=1: decay=0.05: g_gain=4: window=20: eq_gain=10: eq_dt=0.02: }; spike_misc { exp_slope=0.02; spk_thr=1.2; clamp_max_p=0.11; clamp_type=REGULAR; vm_r=0; t_r=6; vm_dend=0.3; vm_dend_dt=0.16; vm_dend_time=6.25; }; opt_thresh {send=0.1: delta=0.005: phase_dif=0: xcal_lrn=0.01: }; maxda {val=INET_DA: inet_scale=1: lay_avg_thr=0.01: }; clamp_range {min=0: max=0.95: range=0.95: scale=1.052632: }; vm_range {min=0: max=1: range=1: scale=1: }; v_m_init {name="v_m_init": type=UNIFORM: mean=0.25: var=0: par=1: }; act_init {name="act_init": type=NONE: mean=0: var=0: par=1: }; dt {integ=1: vm=0.045: net=0.17: midpoint=0: d_vm_max=0.025: vm_eq_cyc=0: vm_eq_dt=1: integ_time=1: vm_time=22.22222: net_time=5.882353: }; act_avg {l_up_add=0: l_dn_pct=0: l_up_dt=0.6: l_dn_dt=0.05: m_dt=0.1: s_dt=0.2: ss_dt=1: use_nd=0: l_time=20: m_time=10: s_time=5: ss_time=1: }; g_bar {e=1: l=1: i=1: h=0.1: a=0.5: }; e_rev {e=1: l=0.2: i=0.15: h=1: a=0: }; hyst {on=0: b_inc_dt=0.05: b_dec_dt=0.05: a_thr=0.8: d_thr=0.7: g_dt=0.1: init=1: trl=0: }; acc {on=0: b_inc_dt=0.01: b_dec_dt=0.01: a_thr=0.5: d_thr=0.1: g_dt=0.1: init=0: trl=0: }; adapt { on=0; dt=0.007; vm_gain=0.1; spike_gain=0.01; interval=10; trials=0; dt_time=142.8571; }; depress {phase_act=ACT_ND: on=0: rec=0.2: asymp_act=0.5: depl=0.2105263: interval=1: trials=0: max_amp=2: }; syn_delay { on=0; delay=4; }; da_mod {on=0: mod=PLUS_CONT: gain=0.1: }; noise_type=NO_NOISE; noise {name="noise": type=GAUSSIAN: mean=0.0015: var=0.001: par=1: }; noise_adapt {trial_fixed=1: k_pos_noise=0: mode=FIXED_NOISE: min_pct=0.5: min_pct_c=0.5: }; noise_sched { name="noise_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=1; }; }; }; act_range {min=0: max=1: range=1: scale=1: }; bias_con_type=LeabraCon; bias_spec {type=LeabraBiasSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["LearnBias"]$$: }; sse_tol=0.5; act_fun=NOISY_XX1; act {gelin=0: thr=0.25: gain=600: nvar=0.005: avg_dt=0.005: avg_init=0.15: i_thr=STD: }; act_lrn_on=0; act_lrn {gelin=1: thr=0.5: gain=100: nvar=0.005: }; spike {rise=1: decay=0.05: g_gain=4: window=20: eq_gain=10: eq_dt=0.02: }; spike_misc { exp_slope=0.02; spk_thr=1.2; clamp_max_p=0.11; clamp_type=REGULAR; vm_r=0; t_r=6; vm_dend=0.3; vm_dend_dt=0.16; vm_dend_time=6.25; }; opt_thresh {send=0.1: delta=0.005: phase_dif=0: xcal_lrn=0.01: }; maxda {val=INET_DA: inet_scale=1: lay_avg_thr=0.01: }; clamp_range {min=0: max=0.95: range=0.95: scale=1.052632: }; vm_range {min=0: max=1: range=1: scale=1: }; v_m_init {name="v_m_init": type=UNIFORM: mean=0.15: var=0: par=1: }; act_init {name="act_init": type=NONE: mean=0: var=0: par=1: }; dt {integ=1: vm=0.04: net=0.7: midpoint=0: d_vm_max=0.025: vm_eq_cyc=0: vm_eq_dt=1: integ_time=1: vm_time=25: net_time=1.428571: }; act_avg {l_up_add=0: l_dn_pct=0: l_up_dt=0.6: l_dn_dt=0.05: m_dt=0.1: s_dt=0.2: ss_dt=1: use_nd=0: l_time=20: m_time=10: s_time=5: ss_time=1: }; g_bar {e=1: l=0.1: i=10: h=1.2: a=0.5: }; e_rev {e=1: l=0.15: i=0.15: h=1: a=0: }; hyst {on=0: b_inc_dt=0.05: b_dec_dt=0.05: a_thr=0.8: d_thr=0.7: g_dt=0.1: init=1: trl=0: }; acc {on=0: b_inc_dt=0.01: b_dec_dt=0.01: a_thr=0.5: d_thr=0.1: g_dt=0.1: init=0: trl=0: }; adapt { on=0; dt=0.007; vm_gain=0.1; spike_gain=0.01; interval=10; trials=0; dt_time=142.8571; }; depress {phase_act=ACT_ND: on=0: rec=0.2: asymp_act=0.5: depl=0.2105263: interval=1: trials=0: max_amp=2: }; syn_delay { on=0; delay=4; }; da_mod {on=0: mod=PLUS_CONT: gain=0.1: }; noise_type=NO_NOISE; noise {name="noise": type=GAUSSIAN: mean=0: var=0.001: par=1: }; noise_adapt {trial_fixed=1: k_pos_noise=0: mode=FIXED_NOISE: min_pct=0.5: min_pct_c=0.5: }; noise_sched { name="noise_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=1; }; }; LeabraUnitSpec @["GPInt_UnitSpec"] { name="GPInt_UnitSpec"; desc=; unique{ bias_spec;opt_thresh;v_m_init;dt;g_bar;e_rev; }; children { name="children"; el_typ=LeabraUnitSpec; el_def=0; }; act_range {min=0: max=1: range=1: scale=1: }; bias_con_type=LeabraCon; bias_spec {type=LeabraBiasSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["LearnBias"].children["FixedBias"]$: }; sse_tol=0.5; act_fun=NOISY_XX1; act {gelin=0: thr=0.25: gain=600: nvar=0.005: avg_dt=0.005: avg_init=0.15: i_thr=STD: }; act_lrn_on=0; act_lrn {gelin=1: thr=0.5: gain=100: nvar=0.005: }; spike {rise=1: decay=0.05: g_gain=4: window=20: eq_gain=10: eq_dt=0.02: }; spike_misc { exp_slope=0.02; spk_thr=1.2; clamp_max_p=0.11; clamp_type=REGULAR; vm_r=0; t_r=6; vm_dend=0.3; vm_dend_dt=0.16; vm_dend_time=6.25; }; opt_thresh {send=0.1: delta=0.005: phase_dif=0: xcal_lrn=0.01: }; maxda {val=INET_DA: inet_scale=1: lay_avg_thr=0.01: }; clamp_range {min=0: max=0.95: range=0.95: scale=1.052632: }; vm_range {min=0: max=1: range=1: scale=1: }; v_m_init {name="v_m_init": type=UNIFORM: mean=0.26: var=0: par=1: }; act_init {name="act_init": type=NONE: mean=0: var=0: par=1: }; dt {integ=1: vm=0.2: net=0.7: midpoint=0: d_vm_max=0.025: vm_eq_cyc=0: vm_eq_dt=1: integ_time=1: vm_time=5: net_time=1.428571: }; act_avg {l_up_add=0: l_dn_pct=0: l_up_dt=0.6: l_dn_dt=0.05: m_dt=0.1: s_dt=0.2: ss_dt=1: use_nd=0: l_time=20: m_time=10: s_time=5: ss_time=1: }; g_bar {e=1: l=3: i=1: h=0.1: a=0.5: }; e_rev {e=1: l=0.275: i=0.15: h=1: a=0: }; hyst {on=0: b_inc_dt=0.05: b_dec_dt=0.05: a_thr=0.8: d_thr=0.7: g_dt=0.1: init=1: trl=0: }; acc {on=0: b_inc_dt=0.01: b_dec_dt=0.01: a_thr=0.5: d_thr=0.1: g_dt=0.1: init=0: trl=0: }; adapt { on=0; dt=0.007; vm_gain=0.1; spike_gain=0.01; interval=10; trials=0; dt_time=142.8571; }; depress {phase_act=ACT_ND: on=0: rec=0.2: asymp_act=0.5: depl=0.2105263: interval=1: trials=0: max_amp=2: }; syn_delay { on=0; delay=4; }; da_mod {on=0: mod=PLUS_CONT: gain=0.1: }; noise_type=NO_NOISE; noise {name="noise": type=GAUSSIAN: mean=0: var=0.001: par=1: }; noise_adapt {trial_fixed=1: k_pos_noise=0: mode=FIXED_NOISE: min_pct=0.5: min_pct_c=0.5: }; noise_sched { name="noise_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=1; }; }; LeabraUnitSpec @["InhibUnits"] { name="InhibUnits"; desc=; unique{ dt;g_bar; }; children { name="children"; el_typ=LeabraUnitSpec; el_def=0; }; act_range {min=0: max=1: range=1: scale=1: }; bias_con_type=LeabraCon; bias_spec {type=LeabraBiasSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["LearnBias"].children["FixedBias"]$: }; sse_tol=0.5; act_fun=NOISY_XX1; act {gelin=0: thr=0.25: gain=600: nvar=0.005: avg_dt=0.005: avg_init=0.15: i_thr=STD: }; act_lrn_on=0; act_lrn {gelin=1: thr=0.5: gain=100: nvar=0.005: }; spike {rise=1: decay=0.05: g_gain=4: window=20: eq_gain=10: eq_dt=0.02: }; spike_misc { exp_slope=0.02; spk_thr=1.2; clamp_max_p=0.11; clamp_type=REGULAR; vm_r=0; t_r=6; vm_dend=0.3; vm_dend_dt=0.16; vm_dend_time=6.25; }; opt_thresh {send=0.1: delta=0.005: phase_dif=0: xcal_lrn=0.01: }; maxda {val=INET_DA: inet_scale=1: lay_avg_thr=0.01: }; clamp_range {min=0: max=0.95: range=0.95: scale=1.052632: }; vm_range {min=0: max=1: range=1: scale=1: }; v_m_init {name="v_m_init": type=UNIFORM: mean=0.15: var=0: par=1: }; act_init {name="act_init": type=NONE: mean=0: var=0: par=1: }; dt {integ=1: vm=0.125: net=0.7: midpoint=0: d_vm_max=0.025: vm_eq_cyc=0: vm_eq_dt=1: integ_time=1: vm_time=8: net_time=1.428571: }; act_avg {l_up_add=0: l_dn_pct=0: l_up_dt=0.6: l_dn_dt=0.05: m_dt=0.1: s_dt=0.2: ss_dt=1: use_nd=0: l_time=20: m_time=10: s_time=5: ss_time=1: }; g_bar {e=1: l=0.1: i=4: h=1.2: a=0.5: }; e_rev {e=1: l=0.15: i=0.15: h=1: a=0: }; hyst {on=0: b_inc_dt=0.05: b_dec_dt=0.05: a_thr=0.8: d_thr=0.7: g_dt=0.1: init=1: trl=0: }; acc {on=0: b_inc_dt=0.01: b_dec_dt=0.01: a_thr=0.5: d_thr=0.1: g_dt=0.1: init=0: trl=0: }; adapt { on=0; dt=0.007; vm_gain=0.1; spike_gain=0.01; interval=10; trials=0; dt_time=142.8571; }; depress {phase_act=ACT_ND: on=0: rec=0.2: asymp_act=0.5: depl=0.2105263: interval=1: trials=0: max_amp=2: }; syn_delay { on=0; delay=4; }; da_mod {on=0: mod=PLUS_CONT: gain=0.1: }; noise_type=NO_NOISE; noise {name="noise": type=GAUSSIAN: mean=0: var=0.001: par=1: }; noise_adapt {trial_fixed=1: k_pos_noise=0: mode=FIXED_NOISE: min_pct=0.5: min_pct_c=0.5: }; noise_sched { name="noise_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=1; }; }; }; act_range {min=0: max=1: range=1: scale=1: }; bias_con_type=LeabraCon; bias_spec {type=LeabraBiasSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["LearnBias"].children["FixedBias"]$: }; sse_tol=0.5; act_fun=NOISY_XX1; act {gelin=0: thr=0.25: gain=600: nvar=0.005: avg_dt=0.005: avg_init=0.15: i_thr=STD: }; act_lrn_on=0; act_lrn {gelin=1: thr=0.5: gain=100: nvar=0.005: }; spike {rise=1: decay=0.05: g_gain=4: window=20: eq_gain=10: eq_dt=0.02: }; spike_misc { exp_slope=0.02; spk_thr=1.2; clamp_max_p=0.11; clamp_type=REGULAR; vm_r=0; t_r=6; vm_dend=0.3; vm_dend_dt=0.16; vm_dend_time=6.25; }; opt_thresh {send=0.1: delta=0.005: phase_dif=0: xcal_lrn=0.01: }; maxda {val=INET_DA: inet_scale=1: lay_avg_thr=0.01: }; clamp_range {min=0: max=0.95: range=0.95: scale=1.052632: }; vm_range {min=0: max=1: range=1: scale=1: }; v_m_init {name="v_m_init": type=UNIFORM: mean=0.15: var=0: par=1: }; act_init {name="act_init": type=NONE: mean=0: var=0: par=1: }; dt {integ=1: vm=0.04: net=0.7: midpoint=0: d_vm_max=0.025: vm_eq_cyc=0: vm_eq_dt=1: integ_time=1: vm_time=25: net_time=1.428571: }; act_avg {l_up_add=0: l_dn_pct=0: l_up_dt=0.6: l_dn_dt=0.05: m_dt=0.1: s_dt=0.2: ss_dt=1: use_nd=0: l_time=20: m_time=10: s_time=5: ss_time=1: }; g_bar {e=1: l=0.1: i=10: h=1.2: a=0.5: }; e_rev {e=1: l=0.15: i=0.15: h=1: a=0: }; hyst {on=0: b_inc_dt=0.05: b_dec_dt=0.05: a_thr=0.8: d_thr=0.7: g_dt=0.1: init=1: trl=0: }; acc {on=0: b_inc_dt=0.01: b_dec_dt=0.01: a_thr=0.5: d_thr=0.1: g_dt=0.1: init=0: trl=0: }; adapt { on=0; dt=0.007; vm_gain=0.1; spike_gain=0.01; interval=10; trials=0; dt_time=142.8571; }; depress {phase_act=ACT_ND: on=0: rec=0.2: asymp_act=0.5: depl=0.2105263: interval=1: trials=0: max_amp=2: }; syn_delay { on=0; delay=4; }; da_mod {on=0: mod=PLUS_CONT: gain=0.1: }; noise_type=NO_NOISE; noise {name="noise": type=GAUSSIAN: mean=0: var=0.001: par=1: }; noise_adapt {trial_fixed=1: k_pos_noise=0: mode=FIXED_NOISE: min_pct=0.5: min_pct_c=0.5: }; noise_sched { name="noise_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=1; }; }; LeabraUnitSpec @["SNc_UnitSpec"] { name="SNc_UnitSpec"; desc=; unique{ opt_thresh; }; children { name="children"; el_typ=LeabraUnitSpec; el_def=0; }; act_range {min=0: max=1: range=1: scale=1: }; bias_con_type=LeabraCon; bias_spec {type=LeabraBiasSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["LearnBias"].children["FixedBias"]$: }; sse_tol=0.5; act_fun=NOISY_XX1; act {gelin=0: thr=0.25: gain=100: nvar=0.005: avg_dt=0.005: avg_init=0.15: i_thr=STD: }; act_lrn_on=0; act_lrn {gelin=1: thr=0.5: gain=100: nvar=0.005: }; spike {rise=1: decay=0.05: g_gain=4: window=20: eq_gain=10: eq_dt=0.02: }; spike_misc { exp_slope=0.02; spk_thr=1.2; clamp_max_p=0.11; clamp_type=REGULAR; vm_r=0; t_r=6; vm_dend=0.3; vm_dend_dt=0.16; vm_dend_time=6.25; }; opt_thresh {send=0.1: delta=0.005: phase_dif=0: xcal_lrn=0.01: }; maxda {val=INET_DA: inet_scale=1: lay_avg_thr=0.01: }; clamp_range {min=0: max=0.95: range=0.95: scale=1.052632: }; vm_range {min=0: max=1: range=1: scale=1: }; v_m_init {name="v_m_init": type=UNIFORM: mean=0.15: var=0: par=1: }; act_init {name="act_init": type=NONE: mean=0: var=0: par=1: }; dt {integ=1: vm=0.95: net=1: midpoint=0: d_vm_max=0.025: vm_eq_cyc=0: vm_eq_dt=1: integ_time=1: vm_time=1.052632: net_time=1: }; act_avg {l_up_add=0: l_dn_pct=0: l_up_dt=0.6: l_dn_dt=0.05: m_dt=0.1: s_dt=0.2: ss_dt=1: use_nd=0: l_time=20: m_time=10: s_time=5: ss_time=1: }; g_bar {e=1: l=0.1: i=1: h=1.2: a=0.5: }; e_rev {e=1: l=0.15: i=0.15: h=1: a=0: }; hyst {on=0: b_inc_dt=0.05: b_dec_dt=0.05: a_thr=0.8: d_thr=0.7: g_dt=0.1: init=1: trl=0: }; acc {on=0: b_inc_dt=0.01: b_dec_dt=0.01: a_thr=0.5: d_thr=0.1: g_dt=0.1: init=0: trl=0: }; adapt { on=0; dt=0.007; vm_gain=0.1; spike_gain=0.01; interval=10; trials=0; dt_time=142.8571; }; depress {phase_act=ACT_ND: on=0: rec=0.2: asymp_act=0.5: depl=0.2105263: interval=1: trials=0: max_amp=2: }; syn_delay { on=0; delay=4; }; da_mod {on=0: mod=PLUS_CONT: gain=0.1: }; noise_type=NETIN_NOISE; noise {name="noise": type=GAUSSIAN: mean=0.0015: var=0.002: par=1: }; noise_adapt {trial_fixed=0: k_pos_noise=0: mode=FIXED_NOISE: min_pct=0.5: min_pct_c=0.5: }; noise_sched { name="noise_sched"; el_typ=SchedItem; el_def=0; default_val=1; interpolate=1; }; }; }; BaseSpec_Group @.gp["LayerSpecs"] { name="LayerSpecs"; el_typ=LeabraUnitSpec; el_def=0; LeabraLayerSpec @["LayerSpec_0"] { name="LayerSpec_0"; desc=; unique{ kwta; }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; LeabraLayerSpec @["Matrisome_layerspec"] { name="Matrisome_layerspec"; desc=; unique{ kwta;gp_kwta;inhib_group;compute_i;i_kwta_pt;clamp;decay;inhib; }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; }; inhib_group=ENTIRE_LAYER; inhib { type=UNIT_INHIB; kwta_pt=0.5; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_K: k=3: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_K: k=2: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=1: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=1: phase=0: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.02: p_dt=0.1: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; LeabraLayerSpec @["GP_layerspec"] { name="GP_layerspec"; desc=; unique{ kwta;compute_i;i_kwta_pt;clamp;inhib; }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; }; inhib_group=ENTIRE_LAYER; inhib { type=UNIT_INHIB; kwta_pt=0.5; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_K: k=1: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_PCT: k=12: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=0: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=1: phase=1: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.02: p_dt=0.1: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; LeabraLayerSpec @["Thalamus_layerspec"] { name="Thalamus_layerspec"; desc=; unique{ kwta;compute_i;decay;inhib; }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; }; inhib_group=ENTIRE_LAYER; inhib { type=UNIT_INHIB; kwta_pt=0.6; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_K: k=1: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_PCT: k=12: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=1: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=1: phase=0: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.02: p_dt=0.1: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; LeabraLayerSpec @["Output_layerspec"] { name="Output_layerspec"; desc=; unique{ kwta;inhib_group;compute_i;i_kwta_pt;inhib; }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; }; inhib_group=ENTIRE_LAYER; inhib { type=KWTA_INHIB; kwta_pt=0; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_K: k=1: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_PCT: k=12: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=1: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=1: phase=1: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.02: p_dt=0.1: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; LeabraLayerSpec @["PFC_Out_layerspec"] { name="PFC_Out_layerspec"; desc=; unique{ kwta;gp_kwta;inhib_group;compute_i;i_kwta_pt;inhib; }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; }; inhib_group=LAY_AND_GPS; inhib { type=KWTA_AVG_INHIB; kwta_pt=0.5; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_K: k=2: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_K: k=1: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=1: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=1: phase=1: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.02: p_dt=0.1: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; LeabraLayerSpec @["InputLayer"] { name="InputLayer"; desc=; unique{ kwta;compute_i;i_kwta_pt;clamp;inhib; }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; }; inhib_group=ENTIRE_LAYER; inhib { type=KWTA_INHIB; kwta_pt=0.25; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_K: k=1: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_PCT: k=12: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=1: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=1: phase=1: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.02: p_dt=0.1: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; LeabraLayerSpec @["SNc_layerspec"] { name="SNc_layerspec"; desc=; unique{ kwta;compute_i;clamp;inhib;decay; }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; }; inhib_group=ENTIRE_LAYER; inhib { type=UNIT_INHIB; kwta_pt=0.6; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_K: k=1: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_PCT: k=12: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=0: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=1: phase=0: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.02: p_dt=0.1: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; LeabraLayerSpec @["InhibLayers"] { name="InhibLayers"; desc=; unique{ kwta;inhib;decay; }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; }; inhib_group=ENTIRE_LAYER; inhib { type=UNIT_INHIB; kwta_pt=0.6; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_PCT: k=3: pct=0.34: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_PCT: k=12: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=1: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=0: phase=0: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.02: p_dt=0.1: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; }; inhib_group=ENTIRE_LAYER; inhib { type=KWTA_AVG_INHIB; kwta_pt=0.6; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_K: k=3: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_PCT: k=12: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=1: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=1: phase=1: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.02: p_dt=0.1: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; LeabraLayerSpec @["NoDecayLayers"] { name="NoDecayLayers"; desc=; unique{ }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; LeabraLayerSpec @["STN"] { name="STN"; desc=; unique{ kwta;gp_kwta;inhib_group;compute_i;i_kwta_pt;inhib; }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; }; inhib_group=ENTIRE_LAYER; inhib { type=UNIT_INHIB; kwta_pt=0.5; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_K: k=2: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_K: k=1: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=1: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=0: phase=0: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.05: p_dt=0: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; LeabraLayerSpec @["PFCIn_layerspec"] { name="PFCIn_layerspec"; desc=; unique{ kwta;gp_kwta;inhib_group;compute_i;i_kwta_pt;inhib; }; children { name="children"; el_typ=LeabraLayerSpec; el_def=0; }; inhib_group=LAY_AND_GPS; inhib { type=KWTA_AVG_INHIB; kwta_pt=0.6; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_K: k=5: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_K: k=1: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=1: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=0: phase=0: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.05: p_dt=0: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; }; inhib_group=ENTIRE_LAYER; inhib { type=KWTA_INHIB; kwta_pt=0.25; gi=2; ff=1; fb=0.5; self_fb=0; dt=0.7; up_immed=0; ff0=0.1; min_i=0; }; kwta {k_from=USE_K: k=1: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; gp_kwta {k_from=USE_PCT: k=12: pct=0.25: pat_q=0.5: avg_dt=0.005: diff_act_pct=0: act_pct=0.1: }; lay_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; unit_gp_inhib {on=0: fffb=0: lay_gi=2: gp_g=0.5: self_g=1: diff_act_pct=0: act_pct_mult=0.3333333: pct_fm_frac=1: act_denom=3: }; clamp {hard=1: gain=0.5: max_plus=0: plus=0.01: min_clamp=0.5: minus_targ_gain=0: }; decay {event=0: phase=0: phase2=0: }; cos_diff_lrate {on=1: lo_diff=0: lo_lrate=0.01: hi_diff=1: hi_lrate=0.01: avg_dt=0.01: }; ct_inhib_mod { manual_sravg=0; sravg_delay=0; use_sin=0; burst_i=0.02; trough_i=0.02; use_fin=0; inhib_i=0; }; tie_brk {on=0: k_thr=1: diff_thr=0.2: thr_gain=0.005: loser_gain=1: }; adapt_i {type=NONE: tol=0.05: p_dt=0: mx_d=0.2: l=0.2: a_dt=0.005: }; abs_net_adapt { on=0; trg_net=0.5; tol=0.1; abs_lrate=0.1; }; }; }; }; layers { name="layers"; el_typ=LeabraLayer; el_def=0; pos {x=0: y=0: z=0: }; pos2d {x=0: y=0: }; max_disp_size {x=14: y=9: z=14: }; max_disp_size2d {x=10: y=38: }; LeabraLayer @["Input"] { name="Input"; desc=; flags=0; layer_type=INPUT; pos {x=1: y=0: z=13: }; pos2d {x=0: y=0: }; disp_scale=1; un_geom {x=5: y=5: n_not_xy=0: n=25: }; unit_groups=0; virt_groups=1; gp_geom {x=1: y=1: n_not_xy=0: n=1: }; gp_spc {x=0: y=0: }; flat_geom {x=5: y=5: n_not_xy=0: n=25: }; disp_geom {x=5: y=5: n_not_xy=0: n=25: }; scaled_disp_geom {x=5: y=5: n_not_xy=0: n=1: }; projections { name="projections"; el_typ=LeabraPrjn; el_def=0; }; send_prjns { name="send_prjns"; el_typ=LeabraPrjn; el_def=0; Projection_Group @. = [0] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Motor_Cortex"].projections["Fm_Input"]; Projection_Group @. = [1] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Striatum_Inhib"].projections["Fm_Input"]; Projection_Group @. = [2] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Go"].projections["Fm_Input"]; Projection_Group @. = [3] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["NoGo"].projections["Fm_Input"]; }; units { name="units"; el_typ=LeabraUnit; el_def=0; pos {x=0: y=0: z=0: }; output_name=; }; unit_spec {type=LeabraUnitSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"]$: }; dmem_dist=DMEM_DIST_DEFAULT; dist { fm_input=-1; fm_output=-1; }; units_lesioned=0; gp_unit_names_4d=0; brain_area=; voxel_fill_pct=1; spec {type=LeabraLayerSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["LayerSpec_0"].children["InputLayer"]$$: }; }; LeabraLayer @["SNc"] { name="SNc"; desc=; flags=0; layer_type=INPUT; pos {x=2: y=0: z=1: }; pos2d {x=0: y=10: }; disp_scale=1; un_geom {x=2: y=2: n_not_xy=0: n=4: }; unit_groups=0; virt_groups=1; gp_geom {x=1: y=1: n_not_xy=0: n=1: }; gp_spc {x=0: y=0: }; flat_geom {x=2: y=2: n_not_xy=0: n=4: }; disp_geom {x=2: y=2: n_not_xy=0: n=4: }; scaled_disp_geom {x=2: y=2: n_not_xy=0: n=1: }; projections { name="projections"; el_typ=LeabraPrjn; el_def=0; }; send_prjns { name="send_prjns"; el_typ=LeabraPrjn; el_def=0; Projection_Group @. = [0] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Striatum_Inhib"].projections["Fm_SNc"]; Projection_Group @. = [1] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Go"].projections["Fm_SNc"]; Projection_Group @. = [2] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["NoGo"].projections["Fm_SNc"]; }; units { name="units"; el_typ=LeabraUnit; el_def=0; pos {x=0: y=0: z=0: }; output_name=; }; unit_spec {type=LeabraUnitSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["SNc_UnitSpec"]$$: }; dmem_dist=DMEM_DIST_DEFAULT; dist { fm_input=-1; fm_output=-1; }; units_lesioned=0; gp_unit_names_4d=0; brain_area=; voxel_fill_pct=1; spec {type=LeabraLayerSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["LayerSpec_0"].children["SNc_layerspec"]$$: }; }; LeabraLayer @["GP_Int"] { name="GP_Int"; desc=; flags=0; layer_type=HIDDEN; pos {x=7: y=-3: z=5: }; pos2d {x=0: y=6: }; disp_scale=1; un_geom {x=2: y=2: n_not_xy=0: n=4: }; unit_groups=0; virt_groups=1; gp_geom {x=1: y=1: n_not_xy=0: n=1: }; gp_spc {x=0: y=0: }; flat_geom {x=2: y=2: n_not_xy=0: n=4: }; disp_geom {x=2: y=2: n_not_xy=0: n=4: }; scaled_disp_geom {x=2: y=2: n_not_xy=0: n=1: }; projections { name="projections"; el_typ=LeabraPrjn; el_def=0; LeabraPrjn @["Fm_GP_Ext"] { name="Fm_GP_Ext"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["GP_Ext"]$; spec {type=TesselPrjnSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["Striatum_GPext"]$$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["GPeGPiInhib"]$$: }; recv_idx=0; send_idx=1; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_STN"] { name="Fm_STN"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["STN"]$; spec {type=FullPrjnSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["Fixed"].children["STN_GPi"]$$: }; recv_idx=1; send_idx=1; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_Go"] { name="Fm_Go"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Go"]$; spec {type=TesselPrjnSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["RowToRow"]$$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["GPeGPiInhib"].children["Inhib_Learn"]$$: }; recv_idx=2; send_idx=1; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; }; send_prjns { name="send_prjns"; el_typ=LeabraPrjn; el_def=0; Projection_Group @. = [0] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Thalamus"].projections["Fm_GP_Int"]; }; units { name="units"; el_typ=LeabraUnit; el_def=0; pos {x=0: y=0: z=0: }; output_name=; }; unit_spec {type=LeabraUnitSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["GPInt_UnitSpec"]$$: }; dmem_dist=DMEM_DIST_DEFAULT; dist { fm_input=-1; fm_output=-1; }; units_lesioned=0; gp_unit_names_4d=0; brain_area=; voxel_fill_pct=1; spec {type=LeabraLayerSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["LayerSpec_0"].children["GP_layerspec"]$$: }; }; LeabraLayer @["GP_Ext"] { name="GP_Ext"; desc=; flags=0; layer_type=HIDDEN; pos {x=5: y=1: z=5: }; pos2d {x=0: y=9: }; disp_scale=1; un_geom {x=2: y=1: n_not_xy=0: n=2: }; unit_groups=0; virt_groups=1; gp_geom {x=1: y=1: n_not_xy=0: n=1: }; gp_spc {x=0: y=0: }; flat_geom {x=2: y=1: n_not_xy=0: n=2: }; disp_geom {x=2: y=1: n_not_xy=0: n=2: }; scaled_disp_geom {x=2: y=1: n_not_xy=0: n=1: }; projections { name="projections"; el_typ=LeabraPrjn; el_def=0; LeabraPrjn @["Fm_STN"] { name="Fm_STN"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["STN"]$; spec {type=UniformRndPrjnSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs["STN_GPe_RndPrjnSpec_0"]$$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["Fixed"].children["STNcons"]$$: }; recv_idx=0; send_idx=0; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_NoGo"] { name="Fm_NoGo"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["NoGo"]$; spec {type=TesselPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["RowToRow"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["NoGoGPe"]$$: }; recv_idx=1; send_idx=2; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; }; send_prjns { name="send_prjns"; el_typ=LeabraPrjn; el_def=0; Projection_Group @. = [0] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["GP_Int"].projections["Fm_GP_Ext"]; Projection_Group @. = [1] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["STN"].projections["Fm_GP_Ext"]; }; units { name="units"; el_typ=LeabraUnit; el_def=0; pos {x=0: y=0: z=0: }; output_name=; }; unit_spec {type=LeabraUnitSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["GPExt_UnitSpec"]$$: }; dmem_dist=DMEM_DIST_DEFAULT; dist { fm_input=-1; fm_output=-1; }; units_lesioned=0; gp_unit_names_4d=0; brain_area=; voxel_fill_pct=1; spec {type=LeabraLayerSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["LayerSpec_0"].children["GP_layerspec"]$: }; }; LeabraLayer @["Thalamus"] { name="Thalamus"; desc=; flags=0; layer_type=HIDDEN; pos {x=12: y=-2: z=9: }; pos2d {x=0: y=12: }; disp_scale=1; un_geom {x=2: y=1: n_not_xy=0: n=2: }; unit_groups=0; virt_groups=1; gp_geom {x=1: y=1: n_not_xy=0: n=1: }; gp_spc {x=0: y=0: }; flat_geom {x=2: y=1: n_not_xy=0: n=2: }; disp_geom {x=2: y=1: n_not_xy=0: n=2: }; scaled_disp_geom {x=2: y=1: n_not_xy=0: n=1: }; projections { name="projections"; el_typ=LeabraPrjn; el_def=0; LeabraPrjn @["Fm_GP_Int"] { name="Fm_GP_Int"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["GP_Int"]$; spec {type=TesselPrjnSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["dMatrosomesGP"]$$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["GPeGPiInhib"].children["ThalInhib"]$$: }; recv_idx=0; send_idx=0; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_Motor_Cortex"] { name="Fm_Motor_Cortex"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Motor_Cortex"]$; spec {type=TesselPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["dMatrosomesGP"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["MtrThal"]$$: }; recv_idx=1; send_idx=6; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; }; send_prjns { name="send_prjns"; el_typ=LeabraPrjn; el_def=0; Projection_Group @. = [0] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Motor_Cortex"].projections["Fm_Thalamus"]; }; units { name="units"; el_typ=LeabraUnit; el_def=0; pos {x=0: y=0: z=0: }; output_name=; }; unit_spec {type=LeabraUnitSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["Thalamus"]$$: }; dmem_dist=DMEM_DIST_DEFAULT; dist { fm_input=-1; fm_output=-1; }; units_lesioned=0; gp_unit_names_4d=0; brain_area=; voxel_fill_pct=1; spec {type=LeabraLayerSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["LayerSpec_0"].children["Thalamus_layerspec"]$$: }; }; LeabraLayer @["Motor_Cortex"] { name="Motor_Cortex"; desc=; flags=NO_ADD_SSE|NO_ADD_COMP_SSE; layer_type=TARGET; pos {x=12: y=-2: z=11: }; pos2d {x=0: y=15: }; disp_scale=1; un_geom {x=2: y=2: n_not_xy=0: n=4: }; unit_groups=0; virt_groups=1; gp_geom {x=1: y=1: n_not_xy=0: n=1: }; gp_spc {x=0: y=0: }; flat_geom {x=2: y=2: n_not_xy=0: n=4: }; disp_geom {x=2: y=2: n_not_xy=0: n=4: }; scaled_disp_geom {x=2: y=2: n_not_xy=0: n=1: }; projections { name="projections"; el_typ=LeabraPrjn; el_def=0; LeabraPrjn @["Fm_Thalamus"] { name="Fm_Thalamus"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Thalamus"]$; spec {type=TesselPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["dMatrosomesGP"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"]$$: }; recv_idx=0; send_idx=0; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_Input"] { name="Fm_Input"; off=0; disp=1; from_type=CUSTOM; from=.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Input"]$$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["Fixed"].children["Input_Motor_Prepotent_"]$$: }; recv_idx=1; send_idx=3; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; }; send_prjns { name="send_prjns"; el_typ=LeabraPrjn; el_def=0; Projection_Group @. = [0] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Thalamus"].projections["Fm_Motor_Cortex"]; Projection_Group @. = [1] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Output"].projections["Fm_Motor_Cortex"]; Projection_Group @. = [2] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Output"].projections["Fm_Motor_Cortex_1"]; Projection_Group @. = [3] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["STN"].projections["Fm_Motor_Cortex"]; Projection_Group @. = [4] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Striatum_Inhib"].projections["Fm_Motor_Cortex"]; Projection_Group @. = [5] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["NoGo"].projections["Fm_Motor_Cortex"]; Projection_Group @. = [6] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Go"].projections["Fm_Motor_Cortex"]; }; units { name="units"; el_typ=LeabraUnit; el_def=0; pos {x=0: y=0: z=0: }; output_name=; }; unit_spec {type=LeabraUnitSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["LearnBiasUnitSpec"].children["Motor_Cortex_unitspec"]$$: }; dmem_dist=DMEM_DIST_DEFAULT; dist { fm_input=-1; fm_output=-1; }; units_lesioned=0; gp_unit_names_4d=0; brain_area=; voxel_fill_pct=1; spec {type=LeabraLayerSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["LayerSpec_0"]$: }; }; LeabraLayer @["Output"] { name="Output"; desc=; flags=0; layer_type=TARGET; pos {x=12: y=2: z=11: }; pos2d {x=0: y=18: }; disp_scale=1; un_geom {x=2: y=1: n_not_xy=0: n=2: }; unit_groups=0; virt_groups=1; gp_geom {x=1: y=1: n_not_xy=0: n=1: }; gp_spc {x=0: y=0: }; flat_geom {x=2: y=1: n_not_xy=0: n=2: }; disp_geom {x=2: y=1: n_not_xy=0: n=2: }; scaled_disp_geom {x=2: y=1: n_not_xy=0: n=1: }; projections { name="projections"; el_typ=LeabraPrjn; el_def=0; LeabraPrjn @["Fm_Motor_Cortex"] { name="Fm_Motor_Cortex"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Motor_Cortex"]$; spec {type=TesselPrjnSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["Striatum_GPInt"]$$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"]$: }; recv_idx=0; send_idx=4; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_Motor_Cortex_1"] { name="Fm_Motor_Cortex_1"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Motor_Cortex"]$; spec {type=OneToOnePrjnSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["OneToOne_2"]$$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"]$: }; recv_idx=1; send_idx=5; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; }; send_prjns { name="send_prjns"; el_typ=LeabraPrjn; el_def=0; }; units { name="units"; el_typ=LeabraUnit; el_def=0; pos {x=0: y=0: z=0: }; output_name=; }; unit_spec {type=LeabraUnitSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["OutputUnitSpec"]$$: }; dmem_dist=DMEM_DIST_DEFAULT; dist { fm_input=-1; fm_output=-1; }; units_lesioned=0; gp_unit_names_4d=0; brain_area=; voxel_fill_pct=1; spec {type=LeabraLayerSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["LayerSpec_0"].children["Output_layerspec"]$$: }; }; LeabraLayer @["STN"] { name="STN"; desc=; flags=0; layer_type=HIDDEN; pos {x=11: y=0: z=4: }; pos2d {x=0: y=21: }; disp_scale=1; un_geom {x=3: y=3: n_not_xy=0: n=9: }; unit_groups=0; virt_groups=1; gp_geom {x=1: y=1: n_not_xy=0: n=1: }; gp_spc {x=0: y=0: }; flat_geom {x=3: y=3: n_not_xy=0: n=9: }; disp_geom {x=3: y=3: n_not_xy=0: n=9: }; scaled_disp_geom {x=3: y=3: n_not_xy=0: n=1: }; projections { name="projections"; el_typ=LeabraPrjn; el_def=0; LeabraPrjn @["Fm_Motor_Cortex"] { name="Fm_Motor_Cortex"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Motor_Cortex"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["Fixed"].children["Mtr_STNcons"]$$: }; recv_idx=0; send_idx=3; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_GP_Ext"] { name="Fm_GP_Ext"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["GP_Ext"]$; spec {type=UniformRndPrjnSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs["GPe_STN_RndPrjnSpec_1"]$$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["Inhib"]$$: }; recv_idx=1; send_idx=0; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; }; send_prjns { name="send_prjns"; el_typ=LeabraPrjn; el_def=0; Projection_Group @. = [0] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["GP_Int"].projections["Fm_STN"]; Projection_Group @. = [1] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["GP_Ext"].projections["Fm_STN"]; }; units { name="units"; el_typ=LeabraUnit; el_def=0; pos {x=0: y=0: z=0: }; output_name=; }; unit_spec {type=LeabraUnitSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["LearnBiasUnitSpec"].children["STN_unitspec"]$$: }; dmem_dist=DMEM_DIST_DEFAULT; dist { fm_input=-1; fm_output=-1; }; units_lesioned=0; gp_unit_names_4d=0; brain_area=; voxel_fill_pct=1; spec {type=LeabraLayerSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["NoDecayLayers"].children["STN"]$$: }; }; Layer_Group @.gp["Striatum"] { name="Striatum"; el_typ=LeabraLayer; el_def=0; pos {x=1: y=0: z=8: }; pos2d {x=0: y=24: }; max_disp_size {x=10: y=9: z=1: }; max_disp_size2d {x=10: y=14: }; LeabraLayer @["Go"] { name="Go"; desc=; flags=0; layer_type=HIDDEN; pos {x=0: y=0: z=0: }; pos2d {x=0: y=0: }; disp_scale=1; un_geom {x=2: y=9: n_not_xy=0: n=18: }; unit_groups=0; virt_groups=1; gp_geom {x=1: y=1: n_not_xy=0: n=1: }; gp_spc {x=1: y=1: }; flat_geom {x=2: y=9: n_not_xy=0: n=18: }; disp_geom {x=2: y=9: n_not_xy=0: n=18: }; scaled_disp_geom {x=2: y=9: n_not_xy=0: n=1: }; projections { name="projections"; el_typ=LeabraPrjn; el_def=0; LeabraPrjn @["Fm_Input"] { name="Fm_Input"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Input"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["Fixed"].children["InputGo"]$$: }; recv_idx=0; send_idx=2; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_Striatum_Inhib"] { name="Fm_Striatum_Inhib"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Striatum_Inhib"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["InhibCons"]$: }; recv_idx=1; send_idx=2; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_SNc"] { name="Fm_SNc"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["SNc"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["Dopamine_D1_"]$$: }; recv_idx=2; send_idx=2; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_Motor_Cortex"] { name="Fm_Motor_Cortex"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Motor_Cortex"]$; spec {type=TesselPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["RowToRow"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["Fixed"].children["MotorCortex_Striatum"]$$: }; recv_idx=3; send_idx=2; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_NoGo"] { name="Fm_NoGo"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["NoGo"]$; spec {type=TesselPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["RowToRow"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["NoGo_inhib_Go"]$$: }; recv_idx=4; send_idx=1; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; }; send_prjns { name="send_prjns"; el_typ=LeabraPrjn; el_def=0; Projection_Group @. = [0] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Striatum_Inhib"].projections["Fm_Go"]; Projection_Group @. = [1] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["GP_Int"].projections["Fm_Go"]; }; units { name="units"; el_typ=LeabraUnit; el_def=0; pos {x=0: y=0: z=0: }; output_name=; }; unit_spec {type=LeabraUnitSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["LearnBiasUnitSpec"].children["matrisom_unitspec"]$: }; dmem_dist=DMEM_DIST_DEFAULT; dist { fm_input=-1; fm_output=-1; }; units_lesioned=0; gp_unit_names_4d=0; brain_area=; voxel_fill_pct=1; spec {type=LeabraLayerSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["LayerSpec_0"].children["Matrisome_layerspec"]$$: }; }; LeabraLayer @["NoGo"] { name="NoGo"; desc=; flags=0; layer_type=HIDDEN; pos {x=4: y=0: z=0: }; pos2d {x=4: y=3: }; disp_scale=1; un_geom {x=2: y=9: n_not_xy=0: n=18: }; unit_groups=0; virt_groups=1; gp_geom {x=1: y=1: n_not_xy=0: n=1: }; gp_spc {x=1: y=1: }; flat_geom {x=2: y=9: n_not_xy=0: n=18: }; disp_geom {x=2: y=9: n_not_xy=0: n=18: }; scaled_disp_geom {x=2: y=9: n_not_xy=0: n=1: }; projections { name="projections"; el_typ=LeabraPrjn; el_def=0; LeabraPrjn @["Fm_Input"] { name="Fm_Input"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Input"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["Fixed"].children["InputNoGo"]$$: }; recv_idx=0; send_idx=1; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_Striatum_Inhib"] { name="Fm_Striatum_Inhib"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Striatum_Inhib"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["InhibNoGo"]$$: }; recv_idx=1; send_idx=1; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_SNc"] { name="Fm_SNc"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["SNc"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["SNc_Inhib_D2_"]$: }; recv_idx=2; send_idx=1; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_Motor_Cortex"] { name="Fm_Motor_Cortex"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Motor_Cortex"]$; spec {type=TesselPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["RowToRow"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["Fixed"].children["Motor_NoGo"]$$: }; recv_idx=3; send_idx=1; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; }; send_prjns { name="send_prjns"; el_typ=LeabraPrjn; el_def=0; Projection_Group @. = [0] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Striatum_Inhib"].projections["Fm_NoGo"]; Projection_Group @. = [1] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers["GP_Ext"].projections["Fm_NoGo"]; Projection_Group @. = [2] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Go"].projections["Fm_NoGo"]; }; units { name="units"; el_typ=LeabraUnit; el_def=0; pos {x=0: y=0: z=0: }; output_name=; }; unit_spec {type=LeabraUnitSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["LearnBiasUnitSpec"].children["matrisom_unitspec"]$: }; dmem_dist=DMEM_DIST_DEFAULT; dist { fm_input=-1; fm_output=-1; }; units_lesioned=0; gp_unit_names_4d=0; brain_area=; voxel_fill_pct=1; spec {type=LeabraLayerSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["LayerSpec_0"].children["Matrisome_layerspec"]$: }; }; LeabraLayer @["Striatum_Inhib"] { name="Striatum_Inhib"; desc=; flags=0; layer_type=HIDDEN; pos {x=8: y=0: z=0: }; pos2d {x=8: y=6: }; disp_scale=1; un_geom {x=2: y=8: n_not_xy=0: n=16: }; unit_groups=0; virt_groups=1; gp_geom {x=1: y=1: n_not_xy=0: n=1: }; gp_spc {x=1: y=1: }; flat_geom {x=2: y=8: n_not_xy=0: n=16: }; disp_geom {x=2: y=8: n_not_xy=0: n=16: }; scaled_disp_geom {x=2: y=8: n_not_xy=0: n=1: }; projections { name="projections"; el_typ=LeabraPrjn; el_def=0; LeabraPrjn @["Fm_Input"] { name="Fm_Input"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Input"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["FBtoInhib"].children["FFtoInhib"]$: }; recv_idx=0; send_idx=0; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_SNc"] { name="Fm_SNc"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["SNc"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["FBtoInhib"].children["FFtoInhib"]$: }; recv_idx=1; send_idx=0; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_Motor_Cortex"] { name="Fm_Motor_Cortex"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers["Motor_Cortex"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["FBtoInhib"].children["FFtoInhib"]$: }; recv_idx=2; send_idx=0; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_Striatum_Inhib"] { name="Fm_Striatum_Inhib"; off=0; disp=1; from_type=SELF; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Striatum_Inhib"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["InhibInhib"]$$: }; recv_idx=3; send_idx=0; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_Go"] { name="Fm_Go"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Go"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["FBtoInhib"]$: }; recv_idx=4; send_idx=0; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; LeabraPrjn @["Fm_NoGo"] { name="Fm_NoGo"; off=0; disp=1; from_type=CUSTOM; from=$.projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["NoGo"]$; spec {type=FullPrjnSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LeabraPrjns"]["FullPrjnSpec_0"]$: }; con_type=LeabraCon; recvcons_type=LeabraRecvCons; sendcons_type=LeabraSendCons; con_spec {type=LeabraConSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Connections"]["FixedFull"].children["FBtoInhib"]$: }; recv_idx=5; send_idx=0; recv_n=1; send_n=1; projected=1; direction=DIR_UNKNOWN; prjn_clr {r=1: g=0.9: b=0.5: a=1: }; trg_netin_rel=-1; }; }; send_prjns { name="send_prjns"; el_typ=LeabraPrjn; el_def=0; Projection_Group @. = [0] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Striatum_Inhib"].projections["Fm_Striatum_Inhib"]; Projection_Group @. = [1] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["Go"].projections["Fm_Striatum_Inhib"]; Projection_Group @. = [2] = LeabraPrjn .projects["BG_PS_inhib_e7"].networks["BGNet"].layers.gp["Striatum"]["NoGo"].projections["Fm_Striatum_Inhib"]; }; units { name="units"; el_typ=LeabraUnit; el_def=0; pos {x=0: y=0: z=0: }; output_name=; }; unit_spec {type=LeabraUnitSpec: spec=$.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["Units"]["FixedBiasUnitSpec"].children["InhibUnits"]$: }; dmem_dist=DMEM_DIST_DEFAULT; dist { fm_input=-1; fm_output=-1; }; units_lesioned=0; gp_unit_names_4d=0; brain_area=; voxel_fill_pct=1; spec {type=LeabraLayerSpec: spec=.projects["BG_PS_inhib_e7"].networks["BGNet"].specs.gp["LayerSpecs"]["LayerSpec_0"].children["InhibLayers"]$$: }; }; }; }; weights { name="weights"; el_typ=Weights; el_def=0; }; flags=NETIN_PER_PRJN; auto_build=AUTO_BUILD; brain_atlas_name=; train_mode=TRAIN; wt_update=ON_LINE; small_batch_n=10; sse_unit_avg=0; sse_sqrt=0; cnt_err_tol=0; compute_prerr=0; threads { run_time {name="": s_used=0: n_used=0: }; sync_time {name="": s_used=0: n_used=0: }; total_time {name="": s_used=0: n_used=0: }; n_wake_in_sync=0; run_time_pct=0; sync_time_pct=0; wake_in_sync_pct=0; interleave=1; ignore_lay_sync=0; }; dmem_sync_level=DMEM_SYNC_NETWORK; dmem_nprocs=1; usr1_save_fmt=FULL_NET; wt_save_fmt=TEXT; n_units=104; n_cons=3489; max_prjns=6; max_disp_size {x=14: y=9: z=14: }; max_disp_size2d {x=10: y=38: }; learn_rule=LEABRA_CHL; ti_mode=0; phase_order=MINUS_PLUS; no_plus_test=1; sequence_init=DO_NOTHING; phase_max=2; time_inc=1; cycle_max=100; mid_minus_cycle=-1; min_cycles=150; min_cycles_phase2=35; dwt_norm_enabled=0; ct_time { use=0; minus=50; plus=20; inhib=1; n_avg_only_epcs=0; total_cycles=71; inhib_start=70; }; ct_sravg { manual=0; start=30; end=1; interval=1; plus_s_st=19; plus_s_only=0; force_con=0; }; ct_sin_i { start=30; duration=20; n_pi=2; burst_i=0.02; trough_i=0.02; }; ct_fin_i { start=20; end=25; inhib_i=0; }; ct_lrn_trig { plus_lrn_cyc=-1; davg_dt=0.1; davg_s_dt=0.05; davg_m_dt=0.03; davg_l_dt=0.0005; thr_min=0; thr_max=0.5; loc_max_cyc=8; loc_max_dec=0.01; lrn_delay=40; lrn_refract=100; davg_l_init=0; davg_max_init=0.001; davg_time=10; davg_s_time=20; davg_m_time=33.33334; davg_l_time=2000; lrn_delay_inc=0.025; lrn_refract_inc=0.01; }; lrn_trig { davg=0; davg_s=0; davg_m=0; davg_smd=0; davg_l=0; davg_max=0.001; cyc_fm_inc=0; cyc_fm_dec=0; loc_max=0; lrn_max=0; lrn_trig=0; lrn=0; }; net_misc { cyc_syn_dep=0; syn_dep_int=20; }; maxda_stopcrit=0.005; trg_max_act_stopcrit=1; norew_val=0.5; off_errs=1; on_errs=1; cos_err_lrn_thr=-1; cos_diff_on=0; cos_diff_auto=0; }; }; };