Changeset 27065
- Timestamp:
- 06/16/22 15:45:38 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/branches/trunk-larour-SLPS2022/src/c/classes/IoModel.cpp
r26556 r27065 1838 1838 matrix=array[i]; 1839 1839 1840 //initialize times: 1841 if(M==this->numberofvertices || M==(this->numberofvertices+1)){ 1842 times=xNew<IssmDouble>(N); 1843 if(M==this->numberofvertices) times[0] = matrix[M-1]; 1844 if(M==this->numberofvertices+1) for(int t=0;t<N;t++) times[t] = matrix[(M-1)*N+t]; 1845 } 1846 else if(M==this->numberofelements || M==(this->numberofelements+1)){ 1847 times=xNew<IssmDouble>(N); 1848 if(M==this->numberofelements) times[0] = matrix[M-1]; 1849 if(M==this->numberofelements+1) for(int t=0;t<N;t++) times[t] = matrix[(M-1)*N+t]; 1850 } 1851 else if(M==2 || M==1){ 1852 times=xNew<IssmDouble>(N); 1853 if(M==1) times[0] = 0; 1854 if(M==2) for(int t=0;t<N;t++) times[t] = matrix[(M-1)*N+t]; 1855 } 1856 else _error_("FetchDataToInput error message: row size of MatArray elements should be either numberofelements (+1) or numberofvertices (+1)"); 1857 1840 1858 //initialize transient input dataset: 1841 1859 TransientInput* transientinput=inputs->SetDatasetTransientInput(input_enum,i, times,N); … … 1858 1876 1859 1877 if(M==this->numberofvertices || M==(this->numberofvertices+1)){ 1860 1861 //recover time vector:1862 times=xNew<IssmDouble>(N);1863 if(M==this->numberofvertices) times[0] = matrix[M-1];1864 if(M==this->numberofvertices+1) for(int t=0;t<N;t++) times[t] = matrix[(M-1)*N+t];1865 1878 1866 1879 IssmDouble* values=xNew<IssmDouble>(numvertices); … … 1880 1893 1881 1894 IssmDouble value; 1882 1883 //recover time vector:1884 times=xNew<IssmDouble>(N);1885 if(M==this->numberofelements) times[0] = matrix[M-1];1886 if(M==this->numberofelements+1) for(int t=0;t<N;t++) times[t] = matrix[(M-1)*N+t];1887 1895 1888 1896 for(int t=0;t<N;t++){ … … 1898 1906 else if(M==2 || M==1){ 1899 1907 IssmDouble value; 1900 1901 //recover time vector:1902 times=xNew<IssmDouble>(N);1903 if(M==1) times[0] = 0;1904 if(M==2) for(int t=0;t<N;t++) times[t] = matrix[(M-1)*N+t];1905 1908 1906 1909 for(int t=0;t<N;t++){
Note:
See TracChangeset
for help on using the changeset viewer.