1. A method for forming a nanoimprint mold, the method comprising:
filling nanoholes formed in a substrate with a material to form nanopillars on the substrate;
performing at least a first partial oxidation of the nanopillars and then removing at least a portion of the oxidized material;
depositing a hard substance on the nanopillars to begin forming the nanoimprint mold on the nanopillars;
depositing a second material on the hard substance; and
removing the substrate from a molding surface of the nanoimprint mold.
2. The method of claim 1, wherein filling the nanoholes formed in a substrate with a material to form nanopillars further comprises depositing additional material on at least the nanopillars, wherein the material is preferentially deposited on the nanopillars at a faster rate than on the substrate.
3. The method of claim 1, wherein the nanoholes in a substrate are arranged in a geometric pattern.
4. The method of claim 1, wherein the material comprises silicon.
5. The method of claim 1, wherein depositing a hard substance comprises depositing metal in a space between the nanopillars, wherein the nanopillars define a shape of the molding surface.
6. The method of claim 1, wherein removing the substrate from a molding surface comprises:
grinding the substrate;
oxidizing any remaining substrate and the nanopillars; and
etching the remaining substrate and nanopillars from the molding surface.
7. The method of claim 1, further comprising depositing a layer on the nanomold surface, the layer comprising at least one of gold, an F-containing polymer, or a self assembled monolayer.
8. The method of claim 1, further comprising attaching a second substrate to a surface opposite the molding surface, the second substrate comprising a handle.
9. The method of claim 1, wherein the molding surface comprises nanowells having a shape that is formed from the nanopillars.
10. The method of claim 1, wherein depositing a hard substance and depositing a second material are repeated two or more times to form layers of the hard substance and of the second material in the nanoimprint mold, wherein the layers of the hard substance and of the second material each have a thickness between about 3 nanometers and about 30 nanometers.
11. The method of claim 10:
wherein the second material provides flexibility to the nanoimprint mold and the second material comprises one of carbon nanotube and graphene and aluminum; and
wherein the hard substance comprises at least one of metal carbide and iron carbide.
12. A method for forming a nanoimprint mold, the method comprising:
forming nanopillars on a substrate with a first material;
partially oxidizing the nanopillars and a portion of the substrate between the nanopillars;
depositing a second material on the nanopillars, wherein the second material is harder than the first material and wherein the nanopillars define a shape of a molding surface of the nanoimprint mold; and
removing the substrate and the nanopillars from the molding surface of the nanoimprint mold.
13. The method of claim 12, wherein forming nanopillars on a substrate with a first material further comprises:
forming nanoholes in the substrate;
filling the nanoholes with the first material using photoresist to form the nanopillars;
depositing additional first material on the nanopillars, wherein some of the additional first material is deposited on the substrate between the nanopillars;
oxidizing at least a portion of the nanopillars and the first material deposited on the substrate; and
removing the oxidized portion of the first material and the oxidized portion of the nanopillars, wherein the nanopillars are thinner than when first formed after the oxidized portion is removed.
14. The method of claim 12, further comprising depositing a layer on the molding surface, the layer comprising at least one of gold, an F-containing polymer, or a self assembled monolayer.
15. The method of claim 12, further comprising depositing additional layers on the second material, wherein the additional layers include at least an additional layer of the first material and an additional layer of the second material, wherein at least some of the additional layers are oxidized.
16. The method of claim 15, wherein spaces between the nanopillars are filled by the additional layers when depositing the additional layers.
17. The method of claim 15, further comprising oxidizing the substrate and the nanopillars.
18. The method of claim 17, wherein the nanopillars are arranged in a geometric pattern.
19. The method of claim 17, wherein the first material comprises silicon and the second material comprises at least one of metal carbide and iron carbide.
20. A method for forming a nanoimprint mold, the method comprising:
forming nanopillars in a defined region on a substrate with a first material;
depositing additional first material on the nanopillars to increase a height of the nanopillars;
performing a first oxidation to oxidize a portion of the nanopillars, wherein the additional first material deposited on the substrate between the nanopillars is oxidized;
removing both the oxidized additional first material on the substrate and at least some of the portion of the nanopillars that has been oxidized;
performing a second oxidation to oxidize a second portion of the nanopillars and to oxidize a portion of the substrate;
depositing a second material on the oxidized nanopillars and on the oxidized substrate, wherein the second material is harder than the first material and harder than the oxidized first material; and
depositing additional layers on the second material, wherein the additional layers fill spaces between the nanopillars; and
removing the substrate and the nanopillars effective to define a molding surface including nanowells in the defined region.
21. The method of claim 20 further comprising depositing a layer on the molding surface, the layer comprising at least one of gold, an F-containing polymer, or a self assembled monolayer.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method performed on a computing device for distributing a plurality of financial instruments between a plurality of accounts, said method comprising:
calculating and storing in a memory location an average instrument value for said plurality of financial instruments; and
determining and storing in a memory location a distribution of said plurality of financial instruments among said plurality of accounts, said distribution determined by iteratively allocating said instruments among said accounts to decrease a total of: differences between a current average instrument value for each of the accounts and the average instrument value for said plurality of instruments.
2. The method of claim 1, further comprising:
a) allocating said instruments among the accounts;
b) calculating and storing in a memory location an error for each account and an overall error for the allocation, wherein said error for each account is based on a difference between a current average instrument value for said account and the average instrument value for said plurality of instruments, and wherein said overall error for the allocation is based on a sum of said errors for each account;
c) reallocating the instruments in the accounts to produce a different instrument allocation;
d) calculating and storing in a memory location a new error for each account and a new overall error for the different instrument allocation; and
e) after steps c) and d) have been performed for at least two possible allocations, selecting as said distribution and storing in a memory location an allocation having a lowest overall error, and allocating the instruments according to the selected allocation.
3. The method of claim 2, further comprising:
f) determining whether the overall error for a possible allocation is zero, and if so, then selecting that possible allocation as the distribution.
4. A method performed on a computing device for distributing a plurality of instruments between a plurality of accounts, said method comprising:
a) calculating an average instrument value for all of the instruments;
b) defining memory locations representing said accounts and instrument positions within said accounts;
c) allocating the values of said instruments into said memory locations, thus creating a representative allocation of said instruments;
d) calculating an error for each representative account and an overall error for the representative allocation, wherein said error for each account is based on a difference between a current average instrument value for said account and the average instrument value, and wherein said overall error for the allocation is based on a sum of said errors for each account;
e) reallocating the values of said instruments into said memory locations to produce a different representative allocation;
f) calculating a new error for each representative account and a new overall error for the different representative allocation; and
g) after steps e) and f) have been performed for at least two possible allocations, selecting as said distribution a representative allocation having a lowest overall error, and allocating the instruments according to the selected allocation.
5. The method of claim 4 further comprising:
h) determining whether the overall error for a possible representative allocation is zero, and if so, then selecting that possible representative allocation as the distribution.
6. A method performed on a computing device for distributing a plurality of instruments between a plurality of accounts, said method comprising:
a) calculating and storing in a memory location an average instrument value for said instruments;
b) allocating the instruments randomly into instrument positions in the plurality of accounts;
c) sorting said accounts into:
a first group where a current average value of the account is greater than the average instrument value;
a second group where a current average value of the account is less than the average instrument value; and
a third group where a current average value of the account is equal to the average instrument value;
d) selecting a first account from the first group and a second account from the second group;
e) calculating and storing in a memory location a first error based on a difference between a current average value for the first account and the average instrument value, and a second error based on a difference between the average instrument value and a current average value for the second account;
f) exchanging an instrument in the second account with an instrument in the first account;
g) calculating and storing in a memory location a new first error as an absolute value of a difference between a new current average value for the first account and the average instrument value, and a new second error as an absolute value of a difference between the average instrument value and a new current average value for the second account;
h) determining whether a sum of the new first error and the new second error is less than a sum of the first error and the second error; and if so, then reapplying step c) to reevaluate the distribution and attempt further improvement; and if not, then returning the exchanged instruments to their respective accounts; and
i) determining whether all possible instrument combinations between all accounts in the first group and all accounts in the second group have been evaluated; and if not, then reapplying step d) to select a different instrument combination; and if so, then stopping.
7. The method of claim 6, wherein step d) includes selecting an account with the largest current average from said first group and selecting an account with the smallest current average from said second group, and wherein step f) includes:
selecting a second instrument in said second account;
selecting a first instrument in said first account having a value within a range comprising the value of the second instrument and the value of the second instrument plus two times a number of instruments in the second account times a result of: the difference between the average instrument value and the current average value for the second account; and
exchanging said second instrument with said first instrument.
8. The method of claim 7, wherein there are at least two instruments in said first account that have a value within the range, wherein step f) includes selecting a smallest instrument within the range described in said first account as said first instrument.
9. A method performed on a computing device for distributing a plurality of instruments between a plurality of accounts, said method comprising the steps of:
a) calculating an average instrument value for all of the instruments;
b) defining memory locations representing said accounts and instrument positions within said accounts;
c) randomly allocating values of said instruments into said memory locations to create a representative allocation of said instruments;
d) calculating an account average instrument value for each representative account;
e) sorting said representative accounts into:
a first group where the average account values are greater than an overall average instrument value;
a second group where the average account values are less than the overall average instrument value; and
a third group where the average account values are equal to the overall average instrument value;
f) selecting a first representative account from said first group, and calculating errorA as a difference between the average value for the first account and the average instrument value;
g) selecting a second representative account from said second group, and calculating errorB as a difference between the average instrument value and the average value for the second account;
h) exchanging an instrument value in said second account with an instrument value in said first account, and calculating new average values for each of said first account and said second account;
i) calculating new_errorA as a difference between the new average value for the first account and the average instrument value; and calculating new_errorB as a difference between the average instrument value and the new average value for the second account;
j) determining if new_errorA plus new_errorB is less than errorA plus errorB, such that the exchange has resulted in an improved allocation and, if so, then returning to step e) to reevaluate the improved allocation and attempt further improvement; and if not, then returning the exchanged instrument values to their original accounts;
k) determining if all possible instrument value combinations between the first group and the second group have been tried and, if not, then returning to step f) to select a different instrument value combination; and if so, then distributing said instruments to said accounts according to said representative allocation.
10. The method of claim 9, wherein step f) includes selecting an account with the largest average instrument value, wherein step g) includes selecting the account with a smallest average instrument value, and wherein step h) comprises:
selecting a second instrument value in said second account;
selecting a first instrument value in said first account having a value within a range comprising the value of the second instrument and the value of the second instrument plus two times a number of instruments in the second account times a result of: a difference between the overall average instrument value and the account average instrument value for the second account; and
exchanging said second instrument value with said first instrument value.
11. The method of claim 10, wherein there are at least two instrument values in said first account that fall within the range, wherein step h) includes selecting the smallest instrument value within the range described in said first account as said first instrument value.
12. A computer readable storage medium having stored thereon computer executable instructions which, when executed by a processor, perform a method for distributing a plurality of instruments between a plurality of accounts, said method comprising:
a) calculating and storing in a memory location an average instrument value for said instruments;
b) allocating the instruments randomly into instrument positions in the accounts;
c) sorting said accounts into:
a first group where a current average value of the account is greater than average instrument value;
a second group where a current average value of the account is less than average instrument value; and
a third group where a current average value of the account is equal to the average instrument value;
d) selecting a first account from the first group and a second account from the second group;
e) calculating and storing in a memory location a first error as the difference between a current average value for the first account and the average instrument value, and a second error as the difference between the average instrument value and a current average value for the second account;
f) exchanging an instrument in the second account with an instrument in the first account;
g) calculating and storing in a memory location a new first error as a absolute value of a difference between a new current average value for the first account and the average instrument value, and a new second error as an absolute value of a difference between the average instrument value and a new current average value for the second account;
h) determining if a sum of the new first error and the new second error is less than a sum of the first error and the second error, such that the exchange has improved the distribution; if so, then returning to step c) to reevaluate the distribution and attempt further improvement; and if not, then returning the exchanged instruments to their respective accounts; and
i) determining if all possible instrument combinations between the first group and the second group have been evaluated; if not, then returning to step d) to select a different instrument combination; and if so, then stopping as no further improvements can be made.
13. The computer readable storage medium of claim 12, wherein step d) includes selecting an account with the largest current average from said first group and selecting an account with the smallest current average from said second group, and wherein step f) includes:
selecting a second instrument in said second account;
selecting a first instrument in said first account having a value within a range comprising between the value of the second instrument and the value of the second instrument plus two times a number of instruments in the second account times a result of: the difference between the average instrument value and the current average value for the second account; and
exchanging said second instrument with said first instrument.
14. The computer readable storage medium of claim 13, wherein there are at least two instruments in said first account that have a value within the range, wherein step f) includes selecting a smallest instrument within the range described in said first account as said first instrument.
15. A computer readable storage medium having stored thereon computer executable instructions which, when executed by a processor, perform a method for distributing a plurality of instruments between a plurality of accounts, said method comprising:
calculating and storing in a memory location an average instrument value for said plurality of financial instruments; and
determining and storing in a memory location a distribution of said plurality of financial instruments among said plurality of accounts, said distribution determined by iteratively allocating said instruments among said accounts to decrease a total of: differences between a current average instrument value for each of the accounts and the average instrument value for said plurality of instruments.
16. The computer readable storage medium of claim 15, wherein the method further comprises:
a) allocating said instruments among the accounts;
b) calculating and storing in a memory location an error for each account and an overall error for the allocation, wherein said error for each account is based on a difference between a current average instrument value for said account and the average instrument value for said plurality of instruments, and wherein said overall error for the allocation is based on a sum of said errors for each account;
c) reallocating the instruments in the accounts to produce a different instrument allocation;
d) calculating and storing in a memory location a new error for each account and a new overall error for the different instrument allocation; and
e) after steps c) and d) have been performed for at least two possible allocations, selecting as said distribution and storing in a memory location an allocation having a lowest overall error, and allocating the instruments according to the selected allocation.
17. The computer readable storage medium of claim 16, wherein the method further comprises:
f) determining whether the overall error for a possible allocation is zero, and if so, then selecting that possible allocation as the distribution.
18. A computer readable storage medium having stored thereon computer executable instructions which, when executed by a processor, perform a method for distributing a plurality of instruments between a plurality of accounts, said method comprising:
a) calculating an average instrument value for all of the instruments;
b) defining memory locations representing said accounts and instrument positions within said accounts;
c) allocating the values of said instruments into said memory locations, thus creating a representative allocation of said instruments;
d) calculating an error for each representative account and an overall error for the representative allocation, wherein said error for each account is based on a difference between a current average instrument value for said account and the average instrument value, and wherein said overall error for the allocation is based on a sum of said errors for each account;
e) reallocating the values of said instruments into said memory locations to produce a different representative allocation;
f) calculating a new error for each representative account and a new overall error for the different representative allocation; and
g) after steps e) and f) have been performed for at least two possible allocations, selecting as said distribution a representative allocation having a lowest overall error, and allocating the instruments according to the selected allocation.
19. The computer readable storage medium of claim 18, wherein the method further comprises:
h) determining whether the overall error for a possible representative allocation is zero, and if so, then selecting that possible representative allocation as the distribution.
20. A computer readable storage medium having stored thereon computer executable instructions which, when executed by a processor, perform a method for distributing a plurality of instruments between a plurality of accounts, said method comprising:
a) calculating an average instrument value for all of the instruments;
b) defining memory locations representing said accounts and instrument positions within said accounts;
c) randomly allocating values of said instruments into said memory locations to create a representative allocation of said instruments;
d) calculating an account average instrument value for each representative account;
e) sorting said representative accounts into:
a first group where the average account values are greater than an overall average instrument value;
a second group where the average account values are less than the overall average instrument value; and
a third group where the average account values are equal to the overall average instrument value;
f) selecting a first representative account from said first group, and calculating errorA as a difference between the average value for the first account and the average instrument value;
g) selecting a second representative account from said second group, and calculating errorB as a difference between the average instrument value and the average value for the second account;
h) exchanging an instrument value in said second account with an instrument value in said first account, and calculating new average values for each of said first account and said second account;
i) calculating new_errorA as a difference between the new average value for the first account and the average instrument value; and calculating new_errorB as a difference between the average instrument value and the new average value for the second account;
j) determining if new_errorA plus new_errorB is less than errorA plus errorB, such that the exchange has resulted in an improved allocation and, if so, then returning to step e) to reevaluate the improved allocation and attempt further improvement; and if not, then returning the exchanged instrument values to their original accounts;
k) determining if all possible instrument value combinations between the first group and the second group have been tried and, if not, then returning to step f) to select a different instrument value combination; and if so, then distributing said instruments to said accounts according to said representative allocation.
21. The computer readable storage medium of claim 20, wherein step f) includes selecting an account with the largest average instrument value, wherein step g) includes selecting an account with the smallest average instrument value, and wherein step h) comprises:
selecting a second instrument value in said second account;
selecting a first instrument value in said first account having a value within a range comprising the value of the second instrument and the value of the second instrument plus two times a number of instruments in the second account times a result of: a difference between the overall average instrument value and the account average instrument value for the second account; and
exchanging said second instrument value with said first instrument value.
22. The computer readable storage medium of claim 21, wherein there are at least two instrument values in said first account that fall within the range, wherein step h) includes selecting the smallest instrument value within the range described in said first account as said first instrument value.