I want to automate inserting an Imported Load / Imported Body Temperature in Mechanical, importing a comma separated text file and specifying that the first two columns are coordinates and all other columns are temperatures.
Adapt this code:
import os # User inputs file_path = path_to_file analysis = Model.Analyses[1] # adapt accordingly # Count number of columns if os.path.exists(file_path): # Open and count columns with open(file_path, 'r') as file: first_line = file.readline() # Split by whitespace or tabs to count columns columns = first_line.split() num_columns = len(columns) print("Number of columns in file: {0}".format(num_columns)) else: print("File not found: {0}".format(txt_file)) # Insert Import Load group imported_load_group = analysis.AddImportedLoadExternalData() # Define settings external_data_files = Ansys.Mechanical.ExternalData.ExternalDataFileCollection() external_data_files.SaveFilesWithProject = False external_data_file_1 = Ansys.Mechanical.ExternalData.ExternalDataFile() external_data_files.Add(external_data_file_1) external_data_file_1.Identifier = "File1" external_data_file_1.Description = "" external_data_file_1.IsMainFile = False external_data_file_1.FilePath= file_path external_data_file_1.ImportSettings = Ansys.Mechanical.ExternalData.ImportSettingsFactory.GetSettingsForFormat(MechanicalEnums.ExternalData.ImportFormat.Delimited) import_settings = external_data_file_1.ImportSettings import_settings.SkipRows = 0 import_settings.SkipFooter = 0 import_settings.Delimiter = "," import_settings.AverageCornerNodesToMidsideNodes = False # First two columns are X and Y coordinates import_settings.UseColumn(0, MechanicalEnums.ExternalData.VariableType.XCoordinate, "m", "X Coordinate") import_settings.UseColumn(1, MechanicalEnums.ExternalData.VariableType.YCoordinate, "m", "Y Coordinate") # All other columns are temperatures for i in range(2, num_columns + 1): import_settings.UseColumn(i, MechanicalEnums.ExternalData.VariableType.Temperature, "K", "Temperature"+str(i)) # Import file imported_load_group.ImportExternalDataFiles(external_data_files) # Add imported body temperature imported_body_temperature = imported_load_group.AddImportedBodyTemperature()
Also refer to this post to see how to modify the data for imported body temp:
Modify data for imported body temperature - Community Forum